Введение

Unix-шелл, основанный на и обратно совместимый с C-шеллом (csh).

tcsh (произносится как /t/iː/ˈsiːʃ/ɛl/ “tee see shell”, /t/iː/ʃ/ɛl/ “tee shell”, или как “tee see ess aitch”, tcsh) — это Unix-шелл, основанный на и обратно совместимый с C-шеллом (csh).

Раковина

Это по сути оболочка C с программируемым дополнением командной строки, редактированием командной строки и некоторыми другими функциями. В отличие от других распространённых оболочек, функции нельзя определить в скрипте tcsh, и пользователю следует использовать псевдонимы вместо них (как в csh). Это стандартная оболочка root для некоторых систем на базе BSD, включая FreeBSD 13 и более ранние версии. (В FreeBSD 14 стандартная оболочка root была изменена на sh, чтобы соответствовать стандартной пользовательской оболочке, в то время как OpenBSD использует оболочку Korn ksh как для root, так и для обычных пользователей.) В tcsh были добавлены дополнение имён файлов и команд, а также концепции редактирования командной строки, заимствованные из операционной системы TENEX, откуда и взялась буква "t" в названии. Поскольку tcsh только добавлял функциональность, не изменяя существующую, он оставался обратно совместимым с оригинальной оболочкой C. Хотя изначально tcsh был ответвлением от исходного кода csh, созданного Биллом Джоем, сейчас tcsh является основной ветвью для текущей разработки. Tcsh очень стабилен, но новые выпуски продолжают появляться примерно раз в год, в основном содержащие незначительные исправления ошибок. На многих системах, таких как macOS и Red Hat Linux, csh на самом деле является tcsh. Часто один из двух файлов является жёсткой или символической ссылкой на другой, так что любое имя указывает на одну и ту же улучшенную версию оболочки C (хотя поведение может меняться в зависимости от используемого имени). В Debian и некоторых производных дистрибутивах (включая Ubuntu) существуют два отдельных пакета: csh и tcsh. Первый основан на оригинальной версии csh BSD, а второй – на улучшенной tcsh.

История

Буква "t" в tcsh происходит от буквы "T" в TENEX, операционной системе, которая вдохновила Кена Грира из Университета Карнеги — Меллона, автора tcsh, функцией автодополнения команд. Грир начал работу над своим кодом для реализации автодополнения имён файлов в стиле Tenex в сентябре 1975 года и окончательно включил его в C-shell в декабре 1981 года, а также в производные системы, такие как DragonFly BSD и DesktopBSD.