Bash - это оболочка по умолчанию в большинстве дистрибутивов Linux. Вот некоторые важные переменные оболочки Bash, которые должен знать каждый пользователь Linux.
Переменные оболочки важны для бесперебойной работы любой системы Linux. Например, каждый раз, когда вы запускаете программу или команду, ваша система просматривает переменную PATH, чтобы проверить, присутствует ли программа. Знание переменных оболочки важно для ежедневного использования или администрирования систем Linux.
Важность переменных оболочки
Переменная оболочки - это заполнитель для хранения информации, используемой вашей системой Linux, программами или сценариями.
В Linux существуют различные типы оболочек или интерпретаторов командной строки, все из которых широко используют переменные. Некоторые из важных ролей, которые играют переменные оболочки, включают:
- Переменные оболочки позволяют хранить значения в оболочке и манипулировать ими, а также могут манипулировать результатами при вычислениях или других операциях.
- Они обеспечивают способ передачи значений между сценариями и программами
- Вы можете использовать переменные оболочки для настройки поведения программ
Переменные оболочки очень гибкие; вы также можете создавать свои собственные пользовательские переменные, вот некоторые из переменных по умолчанию, которые поставляются с вашей системой.
1. PATH
Переменная PATH указывает каталоги, в которых система должна искать исполняемые файлы при вводе команды в терминале.
Это общесистемная переменная среды, которая содержит список каталогов, разделенных двоеточием. В каждом каталоге по очереди выполняется поиск исполняемого файла с тем же именем, что и введенная вами команда.
Например, если вы введете команду ls в терминале, система будет искать в каталогах, указанных в переменной PATH, команду с именем ls. Если он найдет файл, он его запустит; если нет, отобразится сообщение об ошибке “команда не найдена”.
Переменная PATH важна, потому что она позволяет запускать команды из любого каталога без необходимости указывать полный путь к исполняемому файлу. Например, если у вас есть исполняемый файл "ls" в каталоге /usr/bin, вы можете запустить команду ls из любого каталога, просто набрав ls, вместо указания полного пути, т.е. /usr/bin/ls .
Вы можете просмотреть текущее значение переменной PATH, выполнив команду echo следующим образом:
Вы также можете изменить значение переменной PATH, добавив или удалив каталоги из списка. Это может быть полезно, если вы хотите добавить каталог, содержащий ваши собственные исполняемые файлы или пользовательские скрипты, или если вы хотите изменить каталоги, в которых выполняется поиск при выполнении команд.
2. HOME
В Linux переменная HOME - это переменная среды, которая указывает путь к домашнему каталогу пользователя. Почему это так важно? Ну, Linux - это многопользовательская ОС, а домашняя папка - это специальный каталог в вашей системе, связанный с каждым пользователем.
Домашний каталог обычно используется для хранения личных файлов пользователя, таких как документы, изображения, музыка и т. Д.
Переменная HOME обычно устанавливается автоматически при входе в систему и используется многими программами и скриптами для поиска домашнего каталога пользователя. Например, когда вы запускаете команду cd без каких-либо аргументов, она использует переменную HOME для перехода в домашний каталог пользователя.
Многие программы используют переменную HOME для хранения файлов конфигурации или других данных в домашнем каталоге пользователя. Вы можете просмотреть текущее значение переменной HOME, выполнив команду echo $HOME .
3. USER
Переменная USER указывает имя пользователя, вошедшего в систему в данный момент. Он устанавливается автоматически при входе в систему и обычно используется программами и скриптами для определения имени пользователя текущего пользователя.
Пользовательская переменная часто используется в сценариях для настройки поведения программы на основе текущего пользователя. Например, скрипт может проверять значение переменной USER и выполнять определенные действия, только если текущий пользователь имеет права root или sudo.
Вы также можете использовать переменную для выполнения определенных общих команд. Например, при добавлении пользователя в группу docker вы можете просто выполнить следующую команду вместо ввода фактического имени пользователя:
4. SHELL
SHELL - это программа, которая предоставляет интерфейс командной строки (CLI) для взаимодействия с операционной системой.
Большинство систем Linux используют оболочку Bourne Again (Bash) по умолчанию, но есть много альтернатив. C shell (csh), Z shell (Zsh), fish, и т. д.
Переменная SHELL указывает путь к оболочке пользователя по умолчанию. Они устанавливаются автоматически при входе в систему.
Кроме того, переменная используется в сценариях для настройки поведения программ на основе оболочки пользователя по умолчанию. Например, скрипт может проверять значение переменной оболочки и использовать другой синтаксис или параметры в зависимости от используемой оболочки.
Вы можете просмотреть текущее значение переменной оболочки, запустив echo $SHELL . Вы можете изменить свою оболочку по умолчанию с помощью команды chsh .
5. PWD
Еще одна важная переменная среды в Linux, PWD, хранит ваш текущий рабочий каталог. В отличие от большинства переменных среды, которые в основном статичны, эта переменная обновляется оболочкой всякий раз, когда вы меняете каталоги с помощью команды cd.
Вы можете использовать переменную PWD в своих сценариях оболочки, чтобы легко обращаться к текущему рабочему каталогу. Значение переменной аналогично тому, которое вы получаете при выполнении команды pwd.
6. HOSTNAME
Имя хоста или имя устройства - это уникальное имя, используемое для идентификации вашего компьютера в сети. Например, когда вы хотите подключиться к компьютеру по SSH, вы можете просто использовать имя хоста вместо IP-адреса.
Переменная HOSTNAME - это переменная среды, которая просто указывает имя хоста системы. Он устанавливается автоматически при загрузке системы и обычно используется для идентификации системы при ее подключении к сети. Существует несколько способов изменения имени хоста в Linux.
Переменная HOSTNAME также используется программами и сценариями для идентификации системы и настройки ее поведения на основе имени хоста. Скрипт обычно проверяет значение переменной HOSTNAME и выполняет определенные действия только в том случае, если система является конкретным хостом.
Создание пользовательской переменной в Linux
Кроме переменных Linux по умолчанию, которые автоматически устанавливаются для вас. Вы также можете определить свои собственные переменные оболочки с помощью команды export . Чтобы создать новую переменную с именем GREETING(ПРИВЕТСТВИЕ) со значением "Hello World", вы можете использовать следующую команду:
Затем вы можете использовать переменную GREETING(ПРИВЕТСТВИЕ) в своих сценариях или в командной строке, как и любую другую переменную среды.