Tcsh: встроенные команды

Одна из основных функций любой командной среды -- исполнение команд, внешних (то есть независимых программ) и встроенных. Встроенные и внешние команды могут иногда дублировать функции (и имена) друг друга, но при прочих равных условиях применение первых -- предпочтительней, так как они выполняются быстрее. Да и при вызове команды в случае совпадения имён в первую очередь вызывается встроенная команда. И набор встроенных команд -- это то, что, помимо всего прочего, отличает командные среды друг от друга и определяет их функциональность.

Среда tcsh содержит достаточно большое количество встроенных команд. Полный их список можно получить с помощью команды builtins (к слову сказать, также встроенной), ответом на которую будет список, содержащий, по данным команды wc, 74 позиции, а состав, включая и поминаемые выше операторы, выглядит следующим образом:

:          @          alias      alloc      bg         bindkey    break
breaksw    builtins   case       cd         chdir      complete   continue
default    dirs       echo       echotc     else       end        endif
endsw      eval       exec       exit       fg         filetest   foreach
glob       goto       hashstat   history    hup        if         jobs
kill       limit      log        login      logout     ls-F       nice
nohup      notify     onintr     popd       printenv   pushd      rehash
repeat     sched      set        setenv     settc      setty      shift
source     stop       suspend    switch     telltc     termname   time
umask      unalias    uncomplete unhash     unlimit    unset      unsetenv
wait       where      which      while

Со списком встроенных команд можно ознакомиться также на странице

% man builtins

Причём из приводимой там таблицы легко определяется, какие встроенные команды tcsh имеют дублей в оболочке /bin/sh, а какие -- и "однофамильцев" во внешнем мире.

Как я уже говорил, при наличии альтернативы по умолчанию будет выполняться встроенная команда. Если по каким-то причинам требуется непременное использование команды внешней -- её надо вводить с указанием пути к ней.

Почти все встроенные команды могут использоваться как в интерактивном режиме, так и в составе сценариев (скриптов). Исключения единичны: так, команда goto используется исключительно в составе сценариев, а применение команды builtins имеет смысл только при интерактивной работе.

Описание всех встроенных команд tcsh можно найти в соответствующем приложении к официальной документации на сайте проекта. О назначении некоторых из них я говорил выше и буду останавливаться далее по ходу дела в настоящем цикле.


Содержание

. .