Книга: Вопросы истории: UNIX, Linux, BSD и другие
История tcsh
История tcsh
Как уже говорилось, оболочка csh
привнесла в шеллы элементы интерактивности. Однако и её возможности в этом отношении были далеки от идеала. Что особенно почувствовалось в начале 90-х годов, когда, с одной стороны, произошло освобождение BSD-систем в лице NetBSD и FreeBSD от тяжёлого наследия проприетарного режима лицензирования. А с другой – началось победное шествие Linux'а с его стандартной оболочкой GNU bash
, обходящей древний csh
на несколько корпусов.
И тогда разработчики FreeBSD вспомнили об оболочке tcsh
, которая, основываясь на синтаксисе C-shell, с давних времён разрабатывалась сначала Кэном Григом в университете Карнеги-Меллона, а затем Полом Плэйсвэем в университете Огайо. Чем она была примечательна? Сейчас увидим.
Изначально tcsh
создавалась по образу и подобию командного интерпретатора операционной системы TENEX -- собственно, имя её и означает TENEX csh. А особенностью TENEX -- древней, ещё до-UNIX'овой, операционки (из недр которой, кстати, происходит и знаменитая «собака» в адресах электронной почты) были чрезвычайно длинные команды, да ещё и с избыточными словами «для ясности». С такими командными директивами было бы трудно работать без развитых средств навигации и редактирования командной строки. Каковые и стали отличительными особенностями её командного интерпретатора, получившего имя TENEX C-shell.
Разработчики FreeBSD, взяв за основу TENEX C-shell, адаптировали его для своей операционной системы. В которой он и утвердился в качестве стандартного login shell администратора. В OpenBSD же и DragonFly tcsh
изначально стал шеллом по умолчанию «для всех». Применяется он и в таком юзер-ориентированном отпрыске BSD-клана, как PC-BSD. Более того, первое время tcsh
выступал шеллом по умолчанию в MacOS X, пока его не наменили на bash.
Однако и поныне имя /bin/csh
(как и соовтетствующие ему конфигурационные файлы /root/.cshrc
и $HOME/.cshrc
) сохранилось в файловой иерархии всех BSD-систем как реликт предшествующей эпохи. Однако теперь оно соответствует не самостоятельной оболочке, а было лишь жесткой ссылкой на тот же tcsh
. Поведение же последней по умолчанию абсолютно идентично изначальному C-Shell. Это вызвано не эмуляцией предшественника, как в случае с bash
, запускаемых в качестве /bin/sh
, а исключительно настройками – точнее, почти полным отсутствием таковых по умолчанию.
- Глава двадцать первая. История shell'ов
- История развития компьютеров (вместо пролога)
- Глава 3 Поучительная история
- Лекция 11. История запросов
- История SAP
- Заключительный аккорд: Краткая история книжного пиратства Бодо Балац
- 1. Краткая история разметки
- История вычислительной Вселенной
- Краткая история времени бренда
- Рассмотрим маркетинг в контексте. Психология, история и алхимия маркетинга
- История product placement
- Глава 32 Миллион долларов за 12 месяцев: история успеха