Site icon 8HOST.COM

Что делает файл .bashrc в Linux

Файл .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"
}

Этот код объединяет две отдельные команды:

$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.

Подводим итоги

Изменения в файле bashrc выглядят следующим образом:

Последовательность команд можно поместить в .bashrc под функцией. Это сэкономит много времени и сил. При редактировании файла .bashrc нужно быть осторожным и всегда делать резервную копию, прежде чем вносить какие-либо