Встроенные в bash переменные

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

Прим.: чтобы получить текущие значения этих переменных, используйте команду echo для их вывода. Например, если вы хотите увидеть в какой оболочке вы сейчас работаете тогда набираем: echo $ SHELL  чтобы получить текущую оболочку.

$SHELL – выводит какая оболочка запущена сейчас

$HISTSIZE – выводит размер количества команд, которые могут быть размещены в файле истории

$HISTFILE – выводит где расположен файл истории

$USER – отображает имя пользователя

$EUID – отображает UserID.

$GROUPS – выводит информации о GID.

$PWD – отображает текущую директорию.

$HOSTNAME – отображает имя хоста.

$HOME – выводит вашу домашнюю директорию.

$HOSTTYPE или $MACHTYPE – выводит архитектуру хоста, например 32bit или 64 bit.

$OSTYPE –определяет ОС, например — gnu Linux, sun sol и т.д. Удобно для контроля в какой среде запускается скрипт оболочки.

$TERM –выдает имя терминала.

$TMOUT – выход из оболочки если нет активности на терминале, полезно для безопасности сервера.

$PATH – выводит путь ко всем двоичным файлам, т.е. командам

$PIPESTATUS – для получения статуса вывода канала.

$BASH_VERSION – выводит версию bash. Удобно для контроля в какой среде запускается скрипт оболочки.

$PPID – выводит ID родительского процесса.

$PS1, $PS2, $PS3, $PS4 – различные подсказки. Они полезны для сценариев, управляемых меню.

В скриптах

$RANDOM – выдает случайное число, очень удобно для создания паролей новым пользователям.

$LINENO – Выдает номер строки на которой работает скрипт. Удобно для отладки.

$REPLY – содержит последнее значение чтения.

$SECONDS – выдает количество секунд которые скрипт запущен.

Позиционные параметры: $1, $2, $3, $4, $5, $6, $7, $8, $9

$0 – выдает имя скрипта

$* – все позиционные параметры

$@ – все позиционные параметры через пробел

$# – количество параметров

$$ – ID текущего процесса

$! – ID фонового задания

$? – ошибка или статус выхода

$_ – выдает последний аргумент предыдущей команды

Автор: Mirivlad

Скромный труженик консоли и окошек.

Комментарии: