Все эти средства присутствуют в стандартном языке оболочки61 . Его особенностью явяется возможность использовать команды (стандартные и нестандартные) ОС в качестве своего рода «вызовов функций» (хотя и определение, и вызов функции также присутствуют в языке как отдельный механизм).
При попытках реализовать «простые программы из учебников» на языке оболочки результат часто оказывается не самым изящным. Однако этот язык очень хорошо приспособлен для решения административных и системных задач. В большинстве открытых ОС значительная часть самой системы написана на этом языке.
Пределы главы позволяют лишь бегло представить механизмы языка оболочки, проиллюстрировав их несколькими примерами.
Комментарии и указание оболочки
Часть любой строки, начинающаяся со знака «#» вплоть до символа новой строки является комментарием и не исполняется оболочкой. Как и в других языках программирования, комментарии предназначены для передачи какой-либо неочевидной из текста самой программы информации ее читателю.
Во многих системах (включая «ГНУ/Линукс») специальная нестандартная форма комментария может использоваться также для передачи ядру системы информации о том, какую именно оболочку использовать для интерпретации сценария. Такой комментарий имеет вид символов «#!», за которыми слитно следует имя исполняемого файла (обычно «/bin/sh», «/bin/bash» или «/usr/bin/bash»), и должен начинать файл сценария, то есть находиться в первой строке.
Информация из специального комментария востребуется только если файлу сценария придан атрибут исполняемого, а его выполнение инициировано указанием имени файла в качестве команды ОС. Если сценарий запускается на выполнение явным вызовом дополнительного экемпляра оболочки (например, «/usr/bin/bash