Tcsh: начало истории
Изначально tcsh
создавалась по образу и подобию командного интерпретатора операционной системы TENEX -- собственно, имя её и означает TENEX csh. А особенностью TENEX -- древней, ещё до-Unix'овой, операционки (из недр которой, кстати, происходит и знаменитая "собака" в адресах электронной почты) были чрезвычайно длинные команды, да ещё и с избыточными словами "для ясности". С такими командными директивами было бы трудно работать без развитых средств навигации и редактирования командной строки, каковые и стали отличительными особенностями TENEX C-shell.
Таким образом, tcsh
утвердился в роли стандартной оболочки FreeBSD, а позднее OpenBSD, DragonFlyBSD и юзер-ориентированных потомков BSD-клана, таких как PC-BSD и DesktopBSD. Однако и имя csh
было оставлено в файловой иерархии FreeBSD как реликт предшествующей эпохи. Однако теперь оно соответствовало не самостоятельной оболочке, а было, как уже говорилось, лишь жесткой ссылкой на тот же tcsh
.
Поведение csh
и tcsh
при прочих равных условиях (то есть одних и тех же файлах конфигурации) абсолютно идентично: tcsh
, запущенный под именем tcsh
, не эмулирует изначальный C-shell (как это имеет место для bash
и zsh
, запускаемых в качестве /bin/sh
). А кажущаяся бедность умолчального csh
в севежеустановленной FreeBSD обусловлена исключительно его настройками -- точнее, почти полным отсутствием таковых по умолчанию. В этом легко убедиться, заглянув в конфигурационные файлы /etc/csh.cshrc
, /etc/csh.login
, /root/.cshrc
и /root/.login
.
Однако настройка tcsh
будет темой отдельного разговора, а пока бросим общий взгляд на эту командную оболочку.
Содержание . .