Встроенные команды, в отличие от утилит, выполняет сам shell.

. файл Выполнить команды из файла

eval [аргумент ...] Выполнить команду, заданную аргументами eval.

exec [аргумент ...] Сменить программу процесса: в рамках текущего процесса команда, заданная аргументами exec, заменяет shell. Например, exec bash.

exit [код_завершения] Завершить выполнение shell с указанным кодом.

Ctrl+D Клавиатурная комбинация (конец файла) также завершает shell.

shift [n] Формальные аргументы, начиная с ( n+1 )-го, переименовываются в $1 и т.д.

cd [каталог] Сделать текущим заданный каталог.

pwd Выводит имя текущего каталога.

alias [имя[=синоним] ...] Создать синоним простым командам.

read [переменная ...] Со стандартного ввода читается одна строка и делится на поля; первое поле присваивается первой переменной, второе - второй и т.д., причем последовательность всех оставшихся полей присваивается последней переменной. Исходная строка имеет продолжение, если в конце ее стоит последовательность \перевод_строки. Символы, отличные от перевода строки, также могут быть экранированы с помощью \, который удаляется перед присваиванием полей. Возвращается нулевой код завершения, если только не встретился конец файла.

Команда set и ее опции: set [опция ...] [аргумент ...] Присваивание новых значений формальным аргументам.
-a Экспортировать в окружение все переменные, которым производится присваивание.
-C Защищать существующие файлы от перезаписи при перенаправлении вывода.
+o Выдать на стандартный вывод текущие опции языка shell в виде команд.
-x Устанавливает режим трассировки после выполнения всех подстановок в командных строках.
+x Выключает трассировку.