2 min read
Bash!

You should do more shell scripting, kid. Невеликий туторіал для зовсім нубасів.

Баш чоткий. Коротко про головне. Почнемо з твого .bashrc. Коли грузиться термінал, то цьому файлику виконується source. Це значить шо все, що в ньому є починає виконуватись. Зазвичай в кінці цього файла є наступна стрічка:

export PS1='\u@\h \w \$'

або ж аналогічна. Вона в даній конфігурації вона тобі покаже хто ти є, де ти є і де твої тапки. Мабуть буде xobb@laptop ~/src $. Тобто ти хобб, на лептопі, твої тапки в ~/src $ а тут ти вже будеш вводити свої неймовірно замислуваті тексти.

Шоб це нам було приємно давай попробуємо поміняти PS1 на красіве. Перед існуючим PS1 постав #, і добав наступне:

RED='\[\033[01;31m\]'
WHITE='\[\033[0;00m\]'
GREEN='\[\033[0;32m\]'
BLUE='\[\033[0;34m\]'
YELLOW='\[\033[0;33m\]'
export PS1="$YELLOW[\t] $GREEN\u$WHITE@$BLUE\h $YELLOW\w $WHITE\$ "

Щоб побачити різницю уважний читач мабуть набере в терміналі

source ~/.bashrc

а неуважний запустить новий термінал. Давай далі попробуємо собі повводити щось. Повводив? Тепер давай подивимось пару останніх команд, що ти ввів:

$ history 5

покаже останні 5 команд, що ти тайпав. Непогано? А давай тепер попробуємо запустити якусь довгу команду, яку ти вводив. Побачили її номер з попередньої команди і введемо:

!42

Виведе тобі команду під номером 42 в історії. Афігєнно ти придумав, а якщо мені просто потрібно повторити команду? Мені треба робити ці неймовірно складні рухи? Ні, просто запусти наступне:

!!

Дуже зручно, коли шось натайпав, але забув ескалувати привілегії (шо зі мною часто буває):

sudo !!

Це вже хоч шось, шоб повимахуватись перед дівчатами, нє? Тепер давай спробуємо шось поскладніше. Поперенаправляємо вивід наприклад. В наступній статті.