Введение
В этом практическом занятии (лабораторной работе) вы научитесь основным техникам работы с переменными в командной строке Linux. Вы начнете с овладения способом отображения значений переменных с помощью команды echo, что является важным навыком для проверки параметров среды и другой сохраненной информации.
После этого вы узнаете, как проверить существование или пустоту переменных с использованием команды test с опцией -z, что необходимо для условной логики в скриптах. Наконец, вы научитесь выводить список всех в настоящее время определенных переменных среды с помощью команды env, которая дает полное представление о среде вашего оболочки (shell).
Вывод значения переменной с помощью echo
На этом этапе вы научитесь отображать значение переменной с использованием команды echo. Переменные в Linux используются для хранения информации, к которой можно получить доступ и которую можно использовать оболочкой (shell) и другими программами.
Общим типом переменных являются переменные среды (environment variables), которые хранят информацию о среде пользователя, например, имя текущего пользователя, домашнюю директорию и тип терминала.
Для отображения значения переменной используйте команду echo, за которой следует знак доллара ($) и имя переменной. Знак доллара сообщает оболочке, что вы хотите увидеть значение переменной, а не само имя переменной.
Попробуем отобразить значение переменной среды USER, которая хранит имя текущего вошедшего в систему пользователя.
Введите следующую команду в терминале и нажмите Enter:
echo $USER
Вы должны увидеть следующий вывод:
labex
Это показывает, что значение переменной USER равно labex, которое является вашим текущим именем пользователя в среде LabEx.
Теперь отобразим значение переменной среды HOME, которая хранит путь к вашей домашней директории.
Введите следующую команду и нажмите Enter:
echo $HOME
Вы должны увидеть следующий вывод:
/home/labex
Это подтверждает, что ваша домашняя директория - /home/labex.
Вы также можете отобразить значение переменной среды SHELL, которая показывает путь к оболочке (shell), которую вы в настоящее время используете.
Введите следующую команду и нажмите Enter:
echo $SHELL
Вы должны увидеть следующий вывод:
/usr/bin/zsh
Это указывает, что вы в настоящее время используете оболочку zsh.
Использование команды echo с знаком доллара - это фундаментальный способ доступа и отображения значений переменных в терминале Linux.
Проверка существования переменной с помощью test -z
На этом этапе вы научитесь проверять, является ли переменная пустой или не установлена, используя команду test с опцией -z. Это полезно при написании скриптов для принятия решений на основе того, имеет ли переменная какое-либо значение.
Команда test используется для оценки условных выражений. Опция -z проверяет, равна ли длина строки нулю. Если строка пуста (или переменная не установлена), то проверка дает истинный результат.
Проверим, установлена ли переменная с именем MY_VARIABLE. Сначала убедимся, что она не установлена.
Введите следующую команду и нажмите Enter:
unset MY_VARIABLE
Команда unset удаляет переменную. Теперь используем test -z для проверки, является ли MY_VARIABLE пустой. Мы объединим это с командой echo, чтобы увидеть результат проверки. Оператор && выполняет вторую команду только в том случае, если первая команда завершается успешно (возвращает истинное значение, что для команды test означает, что условие выполнено).
Введите следующую команду и нажмите Enter:
test -z "$MY_VARIABLE" && echo "MY_VARIABLE is empty or not set"
Поскольку мы только что удалили переменную MY_VARIABLE, условие test -z "$MY_VARIABLE" истинно (переменная пуста), поэтому команда echo будет выполнена.
Вы должны увидеть следующий вывод:
MY_VARIABLE is empty or not set
Теперь установим значение для MY_VARIABLE.
Введите следующую команду и нажмите Enter:
MY_VARIABLE="Hello"
Теперь запустим ту же команду test -z еще раз.
Введите следующую команду и нажмите Enter:
test -z "$MY_VARIABLE" && echo "MY_VARIABLE is empty or not set"
На этот раз переменная MY_VARIABLE имеет значение "Hello", поэтому она не пуста. Условие test -z "$MY_VARIABLE" ложно, и команда echo не будет выполнена.
На этот раз вы не должны увидеть вывода от команды echo.
Это демонстрирует, как можно использовать test -z для проверки, является ли переменная пустой или не установлена. Это фундаментальное понятие, используемое в скриптах оболочки (shell scripting) для условной логики.
Вывод всех переменных окружения с помощью env
На этом этапе вы научитесь выводить список всех переменных среды, установленных в текущей сессии оболочки (shell), используя команду env.
Переменные среды (environment variables) являются важными компонентами для функционирования оболочки и программ. Они хранят конфигурационную информацию, пути к исполняемым файлам и другие настройки.
Команда env, запущенная без аргументов, выводит список всех переменных среды и их значений.
Введите следующую команду в терминале и нажмите Enter:
env
Вы увидите длинный список вывода, похожий на этот (точный вывод может отличаться в зависимости от вашей системы и конфигурации):
SHELL=/usr/bin/zsh
COLORTERM=truecolor
...
USER=labex
...
HOME=/home/labex
...
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
...
PWD=/home/labex/project
...
Каждая строка в выводе представляет переменную среды в формате VARIABLE_NAME=value.
Вы можете увидеть некоторые из переменных, которые мы рассматривали на предыдущих этапах, такие как USER, HOME и SHELL. Также вы увидите множество других переменных, например, PATH, которая сообщает оболочке, где искать исполняемые команды, и PWD, которая показывает текущую рабочую директорию.
Команда env - это простой, но мощный инструмент для проверки среды оболочки. Она часто используется для отладки или для понимания того, как программа может вести себя в зависимости от ее окружения.
Поскольку вывод может быть довольно длинным, вы можете направить вывод команды env в постраничный просмотрщик, например, less, чтобы просматривать его по одной странице за раз.
Введите следующую команду и нажмите Enter:
env | less
Используйте стрелки на клавиатуре для прокрутки вверх и вниз, и нажмите q для выхода из less.
На этом этапе вы узнали, как выводить список всех переменных среды. В следующих этапах вы узнаете больше о том, как эти переменные используются и как можно взаимодействовать с ними.
Резюме
В этом практическом занятии (lab) вы изучили основные методы работы с переменными в Linux. Вы практиковались в использовании команды echo с символом доллара ($) для вывода значений переменных среды, таких как USER, HOME и SHELL, и поняли, как эта команда извлекает сохраненную информацию.
Кроме того, вы изучили, как проверить существование или пустоту переменной с помощью команды test с опцией -z, что является важным навыком для условной логики в скриптах. Наконец, вы узнали, как вывести список всех в настоящее время определенных переменных среды с помощью команды env, что позволяет получить полное представление о среде оболочки.



