Tcsh - tcsh
Эта статья слишком полагается на Рекомендации к основные источники.Май 2020 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
Снимок экрана с примером сеанса tcsh | |
Разработчики) | Кен Грир, Пол Плейсвей, Христос Зулас и др. |
---|---|
Стабильный выпуск | 6.22.03 / 18 ноября 2020 г.[1] |
Репозиторий | |
Написано в | C |
Операционная система | Кроссплатформенность |
Тип | Оболочка Unix |
Лицензия | Лицензия BSD |
Интернет сайт | www |
tcsh (/ˌтяˈsяʃɛл/ «Тройник», /ˈтяʃɛл/ «Tee-shell», или как «tee see ess aitch», tcsh
) это Оболочка Unix на основе и обратная совместимость с Оболочка C (csh
).
Ракушка
По сути, это оболочка C с программируемыми завершение командной строки, командная строка редактирование и некоторые другие функции. В отличие от других распространенных оболочек, функции не может быть определено в сценарии tcsh, и вместо этого пользователь должен использовать псевдонимы (как в csh). Это собственная корневая оболочка для систем на основе BSD, таких как FreeBSD.
tcsh добавил концепции завершения имени файла и команд и редактирования командной строки, заимствованные из Техас операционная система, которая является источником символа «t».[2] Поскольку он только добавил функциональность и не изменил то, что там было, tcsh остался обратная совместимость[3] с исходной оболочкой C. Хотя он начинался как боковая ветвь исходного дерева исходников csh, Билл Джой был создан, tcsh теперь является основной веткой для продолжающейся разработки.
tcsh очень стабилен, но новые выпуски продолжают появляться примерно раз в год, в основном состоящие из мелких исправлений ошибок.[4]
Во многих системах, таких как Mac OS X и Red Hat Linux, csh
на самом деле tcsh
. Часто один из двух файлов либо жесткая ссылка или символическая ссылка к другому, так что любое имя относится к одной и той же улучшенной версии оболочки C.
На Debian и некоторые производные (в том числе Ubuntu ) есть два разных пакета: csh
и tcsh
. Первый основан на оригинальной BSD-версии csh.[5][6] и последний - улучшенный tcsh.[7][8]
История
Буква «т» в tcsh
происходит от буквы «Т» в Техас, Операционная система которые вдохновили Кена Грира на Университет Карнеги Меллон, автор tcsh, с его функцией завершения команд.[9] Грир начал работу над своим кодом для реализации автозавершения имени файла в стиле Tenex в сентябре 1975 года, окончательно объединив его с оболочкой C в декабре 1981 года.[2] Майк Эллис из Fairchild A.I. Лаборатория добавила завершение команд в сентябре 1983 года.[2] 3 октября 1983 года Грир разместила источник в группе новостей net.sources.[2]
Важные особенности
- История команд
- Встроенный
история
команда отображает ранее введенные команды - Использование ↑ / ↓ в командной строке, чтобы позволить пользователю выбрать команду из истории для редактирования / выполнения
- Вызов предыдущих команд с помощью история команд
!!
выполняет предыдущую команду! n
выполняет n-ю команду, которая была выполнена ранее! -n
выполняет команду, которая была выполнена п команды назад!нить
выполняет последнюю выполненную команду, которая начинается с нить!?нить
выполняет последнюю выполненную команду, содержащую нить
- Использование истории в новых командах
!*
- относится ко всем аргументам предыдущей команды!$
- относится к последнему аргументу предыдущей команды!^
- относится к первому аргументу предыдущей команды!: п
- относится к nth аргумент из предыдущей команды!: м-н
- относится к мth через nth аргументы из предыдущей команды!: n- $
- относится к пth через последний аргумент предыдущей команды
- Встроенный
- Редактирование командной строки
- Автозаполнение имен файлов и переменных, а также программируемое завершение в командной строке
- Селекторы аргументов псевдонима; возможность определять псевдоним, чтобы принимать предоставленные ему аргументы и применять их к командам, на которые он ссылается. Tcsh - единственная оболочка, которая предоставляет эту функцию.
\!#
- селектор аргументов для всех аргументов, включая сам псевдоним / команду; аргументы приводить не нужно.\!*
- селектор аргументов для всех аргументов, кроме псевдонима / команды; аргументы приводить не нужно.\!$
- селектор аргументов для последнего аргумента; аргумент указывать не обязательно, но если он не указан, псевдоним считается последним аргументом.\!^
- селектор аргументов для первого аргумента; ДОЛЖЕН быть указан аргумент.!: п
- селектор аргументов для nth аргумент; ДОЛЖЕН быть указан аргумент; n = 0 относится к псевдониму / имени команды.!: м-п
- селектор аргументов для аргументов из mth к пth; ДОЛЖНЫ быть предоставлены аргументы.!: n- $
- селектор аргументов для аргументов из nth до конца; ДОЛЖЕН быть предоставлен как минимум аргумент n.!: п *
- селектор аргументов для аргументов из nth до конца; Достаточные аргументы приводить не нужно.# Использует команду cd, чтобы при смене директорий сразу отображалось содержимое.псевдоним cd 'cd ! * && ls'
- Соответствие подстановочных знаков
если ( "$ input" =~ [0-9]* ) тогдаэхо "ввод начинается с целого числа"ещеэхо "ввод НЕ начинается с целого числа"endif
- Контроль работы
- Встроенный
куда
команда. Работает каккоторый
команда, но показывает все расположение целевой команды в каталогах, указанных в$ PATH
а не только тот, который будет использоваться.
Развертывание
Ранние версии Mac OS X поставлялись с tcsh в качестве оболочки по умолчанию, но значение по умолчанию для новых учетных записей стало трепать с 10.3 тогда zsh с 10.15. (tcsh все еще предоставляется, и обновление ОС не меняет оболочку существующих учетных записей). tcsh - это корневая оболочка по умолчанию для FreeBSD (пользовательская оболочка по умолчанию POSIX -основан)[10][11] и его потомки любят DragonFly BSD и DesktopBSD.
Смотрите также
Рекомендации
- ^ Христос Зулас. "tcsh-6.22.03 уже доступен!". mailman.astron.com. Получено 28 ноября 2019.
- ^ а б c d Кен Грир (3 октября 1983 г.). "Оболочка C с распознаванием / завершением команд и имен файлов". Группа новостей: net.sources. Получено 29 декабря 2010.
- ^ tcsh (1) справочная страница. tcsh.
- ^ Файл исправлений в tcsh-17 июня 2000 г.
- ^ Ubuntu - Подробная информация о пакете csh. Packages.ubuntu.com.
- ^ Debian - Подробная информация о пакете csh. Packages.debian.org.
- ^ Ubuntu - Подробная информация о пакете tcsh. Packages.ubuntu.com.
- ^ Debian - Подробная информация о пакете tcsh. Packages.debian.org.
- ^ "Т в тчш". Архивировано из оригинал 14 апреля 2012 г.. Получено 31 октября 2013.
- ^ Майкл Урбан; Брайан Тиманн (2002). Самс научится FreeBSD за 24 часа. Самс Паблишинг. п. 56. ISBN 978-0-672-32424-6.
- ^ Командный язык оболочки POSIX 2008 «Оболочка System V была выбрана в качестве отправной точки для тома Shell и Utilities POSIX.1-2008. Оболочка BSD C была исключена из рассмотрения»