Файл .bashrc — это файл скрипта, который выполняется при входе пользователя в систему. Сам файл содержит ряд настроек для сессии терминала: цвета, автозаполнение, историю командной оболочки, псевдонимы команд и т. д.
Это скрытый файл, и простая команда ls не покажет его.
С помощью следующей команды можно посмотреть скрытые файлы:
$ ls -a
В первом столбце можно увидеть файл .bashrc. Содержимое .bashrc можно изменить, чтобы настроить функции, псевдонимы команд и параметры bash.
Файл .bashrc содержит ряд комментариев, которые упрощают его понимание.
Для просмотра файла bashrc введите:
$ cat .bashrc
Ниже приведено несколько примеров редактирования .bashrc.
Определение функций в .bashrc
С помощью bashrc можно легко определять функции. Эти функции могут быть набором основных команд и даже могут использовать аргументы из терминала.
Давайте определим функцию, которая сообщает дату в более развернутой форме.
Сначала нужно открыть файл .bashrc в режиме редактирования.
$ vi .bashrc
На скрине выше показано, как будет выглядеть терминал. Чтобы начать редактирование, нажмите любую букву на клавиатуре. В конце файла поместите следующий код:
today() { echo This is a `date +"%A %d in %B of %Y (%r)"` return }
Нажмите esc. Затем для выхода из vi нажмите двоеточие(:), wq и enter.
Изменения будут сохранены. Чтобы применить изменения в bash, выйдите и перезапустите терминал.
Или примените изменения с помощью следующей команды:
$ source .bashrc
Чтобы запустить только что созданную функцию, нужно вызвать today:
$ today
Теперь создадим еще одну функцию. Она объединит процесс создания каталога и входа в этот каталог.
В файл bashrc добавьте:
mkcd () { mkdir -p -- "$1" && cd -P -- "$1" }
Этот код объединяет две отдельные команды:
- mkdir : создаст каталог
- cd : изменит текущий каталог
$1 представляет собой передаваемый вместе с вызовом функции первый параметр.
Для использования этой функции введите:
$ mkcd directory_name
где “directory_name” – параметр, определяющий имя каталога.
Сначала эта функция с помощью mkdir создаст каталог по имени directory_name, а затем перейдет в него.
Определение псевдонимов в .bashrc
Псевдонимы — это разные имена одной и той же команды. Их можно воспринимать как ярлыки для более длинной команды. В файле .bashrc уже есть набор предопределенных псевдонимов.
Если у вас есть псевдоним, который вы используете регулярно, то вместо того, чтобы определять его каждый раз при открытии терминала, можно сохранить его в файле .bashrc.
Например, заменим команду whoami следующей строкой кода.
alias wmi='whoami'
Не забудьте сохранить изменения, а затем запустите:
$ source .bashrc
Теперь вы можете вводить команду wmi, и терминал будет запускать ее как whoami.
Обычно псевдонимы можно определить, добавив оператор:
alias aliasname='commands'
Отметим, что между “aliasname”, “=” и “commands” не должно быть пробела .
Также псевдонимы можно использовать для хранения длинных путей к каталогам.
Пользовательская настройка терминала
Есть много способов настроить терминал с помощью файла bashrc.
Чтобы изменить текст, который выводится в командной строке, добавьте следующую строку в конец файла:
PS1="JournalDev> "
Сохраните изменения и запустите:
$ source .bashrc
После обновления файла bashrc с помощью команды source командная строка bash изменится, как показано на скрине ниже.
Также можно изменить лимит истории команд, которая отображается при нажатии стрелки вверх. Для этого измените переменные HISTSIZE и HISTFILESIZE в файле bashrc.
- HISTSIZE — это количество команд в памяти при работе bash.
- HISTFILESIZE — это количество команд на диске.
Подводим итоги
Изменения в файле bashrc выглядят следующим образом:
Последовательность команд можно поместить в .bashrc под функцией. Это сэкономит много времени и сил. При редактировании файла .bashrc нужно быть осторожным и всегда делать резервную копию, прежде чем вносить какие-либо