Вывод всех переменных с помощью команды 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
(для вывода всех переменных оболочки).
Нажмите Продолжить, чтобы завершить этот практический урок.