В отличие от DOS и его оболочек количество переменных окружения в LINUX значительно больше. Это объясняется тем, что UNIX - подобные системы были специально разработаны для работы со строкой приглашения операционной системы. С помощью этого приглашения и встроенных в UNIX стандартных команд в ней можно писать настоящие программы, содержащими даже условные выражения и циклы!
Различные разработчики UNIX - подобных операционных систем создали не только разные ядра и прикладные программы для этих операционных систем, но и разные оболочки. LINUX впитала лучшее из этих разработок, и в настоящее время поддерживает следующие оболочки: Bourne Again Shell (BASH), Public Domain Korn Shell (PDKSH) и TC - Shell (TCSH). Они в свою очередь являются потомками Korn - Shell и C = Shell. Не смотря на различия в реализации этих командных оболочек в UNIX - подобных операционных системах, в LINUX между ними больше сходства, чем различий. Это понятно - они реализованы в рамках одной операционной системы для Intel - совместимых компьютеров. К рассмотрению переменных в этих оболочках мы и приступим.
По умолчанию в LINUX применяется BASH. Но по желанию пользователь может загрузить другую оболочку. Все они вызываются "одна поверх другой", расходуя память компьютера. В отличие от Command.com и NDOS.com, каждая новая оболочка загружается с параметрами по-умолчанию, а текущие установки сбрасываются. Так же, как и в DOS, при возврате в предыдущую оболочку все переопределенные переменные очищаются. Для "наследования" переменных (то есть сохранения настроек части переменных предыдущих оболочек в последующих) в LINUX используются команды export в BASH и setenv в TCSH, о которых будет сказано ниже.