Командная оболочка UNIX
Материал из Википедии — свободной энциклопедии
Командная оболочка UNIX (англ. Unix shell, часто просто «шелл» или «sh») — командный интерпретатор, используемый в операционных системах семейства UNIX. В первую очередь, под shell понимаются POSIX-совместимые оболочки, восходящие к Bourne shell, появившемуся в Unix Version 7.
[править] Разновидности
- sh — оригинальный Bourne shell.
- csh — версия из дистрибутива BSD, имеет Си-образный синтаксис и не является POSIX-совместимой. Введены возможности управления заданиями и другие улучшения.
- ksh — версия, разработанная Дэвидом Корном из AT&T Labs (отсюда и её название — KornShell).
- bash, tcsh, zsh — современные версии.
- ash, busybox — современные микро-версии, предназначенные для встраиваемых систем, а также используемые в мини-дистрибутивах.
[править] Программирование
sh является удобным и часто используемым интерпретируемым языком программирования. Он содержит стандартные конструкции для циклов, ветвления, объявления функций и т. п. Данный язык часто используется в UNIX-подобных системах при создании различных сценариев (скриптов) работы, в частности, сценариев автоматического конфигурирования исходных кодов программ перед их компиляцией. Отличительная особенность языка sh — многие операции, которые в традиционных языках программирования являются встроенными, выполняются с помощью вызова внешних программ.
expr
используется для вычисления арифметических выражений.test
используется для сравнения чисел и строк, а также для определения атрибутов файлов.sed, tr, awk, head, tail, cut
и др. — для работы с текстами.