Кіріспе

Unix shell tcsh (/tiːˈsiːʃ/ “tee see shell”, /tiːʃ/ “tee shell”, немесе “tee see ess aitch”, tcsh) – C shell (csh) негізінде құрылған және оған кері үйлесімді Unix shell.

Қабықша

Бұл негізінен C қабықшасы, бағдарламаланатын командалық жолды толықтыру, командалық жолды өңдеу және басқа да бірнеше мүмкіндіктері бар. Басқа кең таралған қабықшалардан айырмашылығы, tcsh скриптінде функцияларды анықтау мүмкін емес, пайдаланушы псевдонимдерді (csh-тегідей) пайдалануы керек. Бұл кейбір BSD негізделген жүйелер үшін, соның ішінде FreeBSD 13 және одан бұрынғылары үшін түбірлік қабықша болып табылады. (FreeBSD 14 әдепкі root қабығын sh деп өзгертіп, әдепкі пайдаланушы қабығымен үйлесімді етті, ал OpenBSD root және қалыпты пайдаланушылар үшін Korn қабығы ksh-ты пайдаланады.) tcsh файл атауын және команданы толықтыру, сондай-ақ TENEX операциялық жүйесінен алынған командалық жолды өңдеу мүмкіндіктерін қосты, осы жүйе "t" әрпінің бастапқы көзі болып табылады. Ол тек жаңа мүмкіндіктерді қосып, ескі функционалдықты өзгертпегендіктен, tcsh бастапқы C қабықшасымен кері үйлесімділігін сақтап қалды. Бұл бастапқыда Bill Joy жасаған csh бастапқы кодын тармақтап өскенмен, қазір tcsh дамудың негізгі тармағы болып табылады. tcsh өте тұрақты, бірақ жаңа нұсқалары жылына шамамен бір рет шығады, көбінесе ұсақ қателерді жоюға арналған. macOS және Red Hat Linux сияқты көптеген жүйелерде csh іс жүзінде tcsh болып табылады. Көбінесе екі файлдың бірі екіншісіне сілтеме болып табылады (қатты немесе символдық сілтеме), сондықтан екі атаудың бірі де C қабықшасының жетілдірілген нұсқасына сілтеме жасайды (бірақ қолданылған атауға байланысты мінез-құлқы өзгеруі мүмкін). Debian және оның туындыларында (Ubuntu сияқты) екі түрлі пакет бар: csh және tcsh. Біріншісі csh-тің бастапқы BSD нұсқасына, ал екіншісі tcsh-тің жетілдірілген нұсқасына негізделген.

Тарих

tcsh-дегі "t" әрпі TENEX операциялық жүйесіндегі "T" әрпінен алынған, бұл жүйе tcsh авторы Кен Грирді командаларды автоматты түрде толықтыру мүмкіндігімен шабыттандырды. Грир 1975 жылдың қыркүйегінде Tenex стиліндегі файл атауларын толықтыруды іске асыру үшін бағдарламалық кодын жазуға кірісті және 1981 жылдың желтоқсанында оны C қабығына қосты. Сондай-ақ, DragonFly BSD және DesktopBSD сияқты одан тараған жүйелерге де әсер етті.