Вывод всех переменных с помощью команды set
На предыдущих этапах вы узнали, как отображать отдельные переменные с помощью команд echo и printenv. Но что, если вы хотите увидеть все переменные, установленные в текущей оболочке?
Команда set, когда используется без аргументов, выводит все переменные оболочки, включая переменные окружения и переменные, специфичные для оболочки.
Введите следующую команду в терминал и нажмите Enter:
set
Вы увидите длинный список переменных и их значений. Этот вывод включает переменные окружения (например, HOME, USER, PATH), а также переменные, специфичные для текущей сессии оболочки.
...
HOME=/home/labex
HOSTNAME=...
HOSTTYPE=x86_64
...
LANG=C.UTF-8
...
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
...
SHELL=/usr/bin/zsh
...
USER=labex
...
Вывод может быть довольно обширным. Вы можете прокрутить его, чтобы увидеть различные переменные, установленные по умолчанию в вашей среде.
Сравнивая вывод команд set и printenv (если вы запустите printenv без аргументов), вы заметите, что set выводит больше переменных. Это потому, что set показывает все переменные оболочки, в то время как printenv показывает только переменные окружения.
Понимание различия между переменными оболочки и переменными окружения имеет важное значение при углубленном изучении Linux. Переменные окружения наследуются дочерними процессами, в то время как переменные оболочки обычно локальны для текущей сессии оболочки.
Теперь вы узнали три способа взаимодействия с переменными в Linux: echo (для отображения отдельных переменных), printenv (для отображения переменных окружения) и set (для вывода всех переменных оболочки).
Нажмите Продолжить, чтобы завершить этот практический урок.