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

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

Оператор цикла for позволяет выполнить несколько команд (тело цикла) многократно.

Оператор цикла while позволяет выполнять тело цикла многократно до тех пор пока истинно условие.

Оператор цикла until позволяет выполнять тело цикла многократно до тех пор пока условие ложно.

Команда test используется в управляющих конструкциях if, while и until, она проверяет некоторое условие и вырабатывает нулевой или ненулевой код завершения в зависимости от того, оказалось ли условие, соответственно, истинным или ложным.

Функция с фигурными скобками выполняется в рамках текущего процесса.

Для функции с круглыми скобками () порождается отдельный процесс.

Конвейер - последовательность команд, разделенных знаком | . Стандартный вывод всех команд, кроме последней, направляется на стандартный ввод следующей команды конвейера.