Shell — имя языка программирования и название командного интерпретатора. Язык программирования shell содержит стандартные конструкции для циклов, ветвления, объявления функций и т. п., он часто используется в UNIX-подобных системах при создании различных сценариев (скриптов) работы, в частности, сценариев автоматического конфигурирования исходных кодов программ перед их компиляцией.

Конспект лекций Диордица А.А.
Оригинальный текст В.А. Галатенко

Shell как интерактивный командный интерпретатор, способен храненить и использовать историю сеанса, редактировать командную строку.

Переменные обозначаются именами. Все значения в языке shell имеют текстовый тип. Значения могут присваиваться переменным при помощи знака равенства.

Тему "Служебные переменные языка shell и аргументы shell-процедур" изучим на примере.

Прежде чем команда начнет выполняться, в каждом составляющем ее поле осуществляется поиск символов *, ?, и [. Поле с любым из этих символов рассматривается как шаблон имен файлов и заменяется именами файлов, удовлетворяющими данному шаблону. Символ . в начале имени файла и символ / , должны быть заданы в шаблоне явно.

Если в командной строке встретилась цепочка символов, заключенная в обратные кавычки ( ` ), она интерпретируется как команда, стандартный вывод которой подставляется вместо упомянутой конструкции. Говорят, что в этом случае производится подстановка результатов выполнения команды, а сами обратные кавычки называют символами подстановки.

Если условие истинно, выполняется один набор команд, в противном случае — альтернативный набор команд.

Оператор выбора case позволяет выполнить одну из нескольких групп команд, в соответствии с заданным ключом.