оболочка Unix


Оболочка Unix — это интерпретатор или оболочка командной строки , которая обеспечивает пользовательский интерфейс командной строки для Unix-подобных операционных систем . Оболочка является одновременно интерактивным командным языком и языком сценариев и используется операционной системой для управления выполнением системы с помощью сценариев оболочки . [2]

Пользователи обычно взаимодействуют с оболочкой Unix с помощью эмулятора терминала ; однако для серверных систем обычно используется прямая работа через последовательные аппаратные соединения или Secure Shell . Все оболочки Unix предоставляют подстановочные знаки файлов , конвейерную обработку , здесь документы , подстановку команд , переменные и структуры управления для проверки условий и итерации .

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

В Unix-подобных операционных системах пользователи обычно имеют множество вариантов интерпретаторов командной строки для интерактивных сеансов. Когда пользователь входит в систему в интерактивном режиме, программа оболочки автоматически выполняется на время сеанса. Тип оболочки, который может быть настроен для каждого пользователя, обычно хранится в профиле пользователя, например, в локальном файле passwd или в распределенной системе конфигурации, такой как NIS или LDAP ; однако пользователь может запустить любую другую доступную оболочку в интерактивном режиме.

В операционных системах с оконной системой , таких как macOS и настольные дистрибутивы Linux , некоторые пользователи могут никогда не использовать оболочку напрямую. В системах Unix оболочка исторически была языком реализации сценариев запуска системы, включая программу, которая запускает оконную систему, настраивает сеть и многие другие важные функции. Однако некоторые поставщики систем заменили традиционную систему запуска на основе оболочки ( init ) другими подходами, такими как systemd .

Первой оболочкой Unix была оболочка Томпсона sh , написанная Кеном Томпсоном из Bell Labs и распространявшаяся вместе с версиями Unix с 1 по 6 с 1971 по 1975 год . для всех более поздних оболочек Unix, включая конвейеры, простые структуры управления с использованием ifи gotoи подстановочные знаки имени файла. Хотя в настоящее время он не используется, он все еще доступен как часть некоторых древних систем UNIX.