Что такое .bashrc и как настроить его правильно?

В вашем домашнем каталоге есть несколько скрытых файлов. Если вы используете macOS или популярный дистрибутив Linux, вы увидите файл с именем «.bashrc» в верхней части скрытых файлов. Здесь мы объясним, что делает файл .bashrc и почему вы должны его редактировать и настраивать.

Что такое .bashrc

Если вы работаете в операционной системе на базе Linux, то скорее всего, в качестве терминала по умолчанию у вас установлен bash. Хотя существует множество различных оболочек, bash является самой распространенной и самой популярной. Если вы не знаете, что это значит, bash интерпретирует введенный вами текст в программе Terminal и выполняет команды, основанные на его вводе. Он допускает некоторую степень настройки с помощью сценариев, для чего и используется .bashrc.

Файл .bashrc содержит список опций настройки оболочки bash. Он загружается при каждом запуске. Файл .bashrc находится в каталоге пользователя. Символ .(точка) перед именем файла означает, что он скрыт от посторонних глаз. Чтобы просмотреть его, вам нужно активировать опцию «Просмотр скрытых файлов».

Как я могу редактировать .bashrc?

Вы можете редактировать .bashrc в любом текстовом редакторе. Вы также можете использовать nano для редактирования в терминале.

nano ~/.bashrc

Если вы никогда раньше не редактировали свой файл .bashrc, вы можете обнаружить, что он пуст. Это нормально! В противном случае, вы можете смело вписывать свои дополнения в любую строку.

Любые изменения, внесенные вами в .bashrc, будут применены при следующем запуске терминала. Если вы хотите применить их немедленно, выполните следующую команду:

source ~/.bashrc

Примечание: Вы можете добавлять изменения в .bashrc куда угодно, но не стесняйтесь использовать комментарии (строки, которым предшествует #) для документирования вашего кода.

Советы по настройке .bashrc

Теперь вы можете сделать несколько полезных трюков, чтобы сделать работу с терминалом более эффективной и удобной.

1. Псевдонимы

Псевдонимы позволяют создать более короткую версию длинной команды.

Например, команда ls часто используется для отображения содержимого каталога. Вы также можете использовать ls -lha, чтобы отобразить содержимое с более подробной информацией. Можно добавить псевдоним ll, который выполнит ls -lha. Вы можете просто ввести ll в терминале, и он выполнит команду ls -lha.

Вы должны оформить свои псевдонимы следующим образом:

alias ll="ls -lha"

Введите текст, который вы хотите заменить — слева, а команду — справа между кавычками.

Вы можете использовать иакой метод для создания более коротких версий команд, защиты от распространенных опечаток или заставить команду всегда выполняться с выбранными вами флагами. Вы также можете обойти раздражающий или легко забываемый синтаксис, используя свои собственные сокращения.

2. Функции

В дополнение к сокращенным именам команд, вы можете объединить несколько команд в одну операцию с помощью функций bash. Они могут быть довольно сложными:

function_name () {
  command_1 command_2
}

Например, команда ниже объединяет mkdir и cd. Набрав md folder_name, вы создадите каталог с именем «folder_name» и сразу же перейдете в него.

md () {
  mkdir -p $1 cd $1
}

Вы видите, что $1 в функции представляет собой первый аргумент, то есть текст, который вы вводите сразу после имени функции.

3. Добавление простого приглашения Bash

Вы также можете использовать файл .bashrc для создания собственного приглашения оболочки. Подсказка оболочки – это строка текста, которая появляется в начале каждой строки ввода терминала. Она может содержать как статическую информацию, например, имя вашей системы, так и динамические сценарии, которые меняются в зависимости от текущего рабочего каталога оболочки.

4. Изменение переменной PATH.

Переменная PATH – это важная переменная, которая указывает оболочке, где искать скрипты и двоичные файлы для текущего сеанса. Вы можете использовать файл .bashrc для хранения/изменения содержимого вашей переменной PATH. Это полезно в тех случаях, когда вы хотите запускать свои собственные программы из пользовательского каталога.

Чтобы изменить переменную PATH, добавьте следующую строку кода в конец файла .bashrc:

PATH="$PATH:"

Это скажет вашей оболочке загружать значение PATH по умолчанию перед загрузкой любых пользовательских аргументов.

После этого вы можете добавить свои собственные каталоги в конец переменной PATH.

PATH=":/home/$USER/bin:/home/$USER/git"

5. Экспорт новых переменных среды

Переменные среды – это контейнеры, в которых хранятся специфические для сеанса значения для программы или системного процесса. Они содержат строки, которые дают программе опцию, который она может использовать во время работы.

Например, некоторые программы используют переменную окружения «POSTGRESQL_DATABASE», когда они связываются с внешним процессом базы данных:

POSTGRESQL_DATABASE="postgres://ramces:password@localhost:5432/db"

После этого, вам нужно экспортировать переменную в ваш shell. Это превратит ее из обычной переменной оболочки в переменную окружения:

POSTGRESQL_DATABASE="postgres://ramces:password@localhost:5432/db"
export POSTGRESQL_DATABASE

6. Связывание .bashrc с .bash_profile

Разница между .bashrc и .bash_profile является одной из самых больших путаниц для начинающего пользователя Linux. bash_profile запускается только один раз при входе в систему, в то время как .bashrc запускается каждый раз, когда запускается новая оболочка.

Как бы то ни было, это нечеткое разделение означает, что можно перепутать эти две команды и не выполнить команду, которую вы хотите запустить. Одним из быстрых способов решения этой проблемы является обеспечение запуска .bashrc сразу после загрузки .bash_profile.

Добавьте следующую строку кода в конец файла .bashrc:

if [ -f ~/.bashrc ]; then . ~/.bashrc
fi

Этот небольшой блок кода скажет оболочке проверить, существует ли файл .bashrc в вашем домашнем каталоге. Если он будет найден, Bash загрузит этот файл и выполнит его команды в текущем экземпляре оболочки.

Часто задаваемые вопросы

Будет ли мой файл .bashrc работать с другими оболочками Linux?

Разработчики Bash разработали файл .bashrc только для работы с оболочкой Bash. Однако важно отметить, что большинство команд внутри файла .bashrc совместимы с некоторыми Unix-подобными оболочками. Например, вы можете скопировать содержимое файла .bashrc в аналог оболочки Korn: .kshrc, и он все равно будет работать.

Можно ли установить стандартные права доступа к файлам с помощью Bash?

Да. Для этого нужно добавить команду umask в конец файла .bashrc. Это простая программа, которая устанавливает битовую маску на биты разрешения, которые вы хотите установить. Например, команда umask 027 эквивалентна выполнению sudo chmod -R 750 ./directory.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.maketecheasier.com

Похожие статьи

Комментарии (0)