tcsh
tcsh개발자 | Ken Greeer, Paul Placeway, Christos Zoulas 등 |
---|---|
안정된 릴리스 | 6.22.04[1] / 2021년 4월 26일; 전 ( ) |
저장소 | |
기입처 | C |
운영 체제 | 크로스 플랫폼 |
유형 | Unix 쉘 |
면허증. | 2002: BSD-3-Clause[2][3] 1991년: BSD-4-Clause[4] |
웹 사이트 | www |
tcsh(/tea-see-shell), /te-see-shell/te-shell 또는 "tee-see ess aitch",tcsh
)는 C 쉘(C 쉘)에 기반한 Unix 쉘로 하위 호환성이 있습니다.csh
).
껍데기
기본적으로 C 쉘은 프로그램 가능한 명령줄 완성, 명령줄 편집 및 기타 몇 가지 기능을 갖추고 있습니다.다른 일반적인 셸과는 달리 함수는 tcsh 스크립트로 정의할 수 없으며 대신 에일리어스를 사용해야 합니다(csh와 같음).FreeBSD와 같은 BSD 기반 시스템의 네이티브 루트 셸입니다.
tcsh는 TENEX 운영체제에서 차용한 파일 이름, 명령어 완료 및 명령줄 편집 개념을 추가했습니다.이 개념은 "[5]t"의 소스입니다.tcsh는 기능만 추가하고 기존 기능을 변경하지 않았기 때문에 원래 C 쉘과의 하위[6] 호환성을 유지했습니다.Bill Joy가 작성한 원래 csh 소스 트리에서 사이드 브랜치로 시작했지만, 현재 tcsh는 지속적인 개발을 위한 주요 브랜치입니다.
tcsh는 매우 안정적이지만, 새로운 릴리스는 1년에 한 번 정도 계속 나타나며, 대부분은 사소한 버그 [7]수정으로 구성됩니다.
MacOS 및 Red Hat Linux와 같은 많은 시스템에서csh
사실tcsh
두 파일 중 하나는 하드링크이거나 다른 파일과의 심볼릭링크인 경우가 많기 때문에 어느 하나의 이름이 C 쉘의 개량된 버전을 나타냅니다.
Debian 및 일부 파생 모델(Ubuntu 포함)에는 두 가지 다른 패키지가 있습니다.csh
그리고.tcsh
전자는 원래 BSD 버전의 csh를[8][9] 기반으로 하고 후자는 개선된 [10][11]tcsh를 기반으로 합니다.
역사
의 "t"는tcsh
tcsh의 저자인 카네기 멜론 대학의 Ken Greeer에게 명령어-완성 [12]기능으로 영감을 준 운영체제인 TENNEX의 "T"에서 유래했습니다.Greeer는 1975년 9월에 Tenex 스타일의 파일 이름 완성을 구현하기 위한 코드 작업을 시작했고,[5] 1981년 12월에 마침내 C 쉘에 통합했습니다.페어차일드 A의 마이크 엘리스입니다I.Labs는 1983년 [5]9월에 명령 완료를 추가했습니다.1983년 10월 3일, 그리어는 소스를 인터넷에 올렸습니다.소스 뉴스 그룹.[5]
중요한 기능
- 명령어 이력
- 빌트인
history
명령어는 이전에 실행한 명령어를 표시합니다. - 사용방법↑ / 명령줄에서 사용자가 편집/삭제할 명령을 선택할 수 있습니다.
- 명령 내역을 사용한 이전 명령 호출
!!
이전 명령어를 실행합니다.!n
이전에 실행된n번째 명령어를 실행합니다.!-n
n개의 명령어 전에 실행된 명령어를 실행합니다.!string
string으로 시작하는 가장 최근에 실행된 명령어를 실행합니다.!?string
문자열이 포함된 가장 최근에 실행된 명령어를 실행합니다.
- 새 명령에서 기록 사용
!*
- 이전 명령어의 모든 인수를 참조합니다.!$
- 이전 명령어의 마지막 인수를 참조합니다.!^
- 이전 명령어의 첫 번째 인수를 참조합니다.!:n
- 이전 명령어의 n 인수를th 참조합니다.!:m-n
- 이전 명령어의 m ~nth 인수를th 참조합니다.!:n-$
- 이전 명령어의 nth~마지막 인수를 참조합니다.
- 빌트인
- 명령줄 편집
- 명령줄에서 파일 이름 및 변수 자동 완성 및 프로그램 가능 완료
- 에일리어스 인수 셀렉터: 에일리어스에 제공된 인수를 취득하여 에일리어스가 참조하는 명령어에 적용할 수 있습니다.이 기능을 제공하는 셸은 Tcsh뿐입니다.
\!#
- 에일리어스/명령어 자체를 포함한 모든 인수에 대한 인수 셀렉터. 인수를 지정할 필요가 없습니다.\!*
- alias/command를 제외한 모든 인수에 대한 인수 선택기. 인수를 지정할 필요가 없습니다.\!$
- 마지막 인수의 인수 셀렉터.인수를 지정할 필요는 없지만 인수가 지정되지 않은 경우 에일리어스 이름이 마지막 인수로 간주됩니다.\!^
- 첫 번째 인수의 인수 셀렉터. 인수를 지정해야 합니다.\!:n
- nth 인수에 대한 인수 선택 도구. 인수를 제공해야 합니다. n=0은 별칭/명령 이름을 나타냅니다.\!:m-n
- m에서n까지의thth 인수에 대한 인수 셀렉터.인수를 지정해야 합니다.\!:n-$
- n부터th 마지막까지의 인수 셀렉터.적어도 인수n을 지정해야 합니다.\!:n*
- n부터th 마지막까지의 인수를 위한 인수 셀렉터. 충분한 인수를 지정할 필요가 없습니다.#디렉토리 변경 시 즉시 내용이 표시되도록 cd 명령어에 별칭을 붙입니다. 에일리어스 CD 'cd \!* & ls'
- 와일드카드 매칭
( "$input" =~ [0-9]* )인 경우 "input starts with integer"를 에코합니다.그렇지 않으면 "input does not started with integer"를 에코합니다.
- 작업 제어
- 빌트인
where
명령어를 입력합니다.다음과 같이 동작합니다.which
명령어는 에서 지정한 디렉토리에 있는 타겟명령어의 모든 위치를 표시합니다.$PATH
사용할 수 있는 것 보다 더 많은 정보를 얻을 수 있습니다.
도입
이전 버전의 Mac OS X는 기본 셸로 tcsh와 함께 제공되었지만 새 계정의 기본값은 10.3에서 bash가 되고 10.15에서 zsh가 됩니다.(tcsh는 계속 제공되며 OS를 업그레이드해도 기존 계정의 셸은 변경되지 않습니다).tcsh는 FreeBSD(기본 사용자 셸은 POSIX 기반)[13][14] 및 그 후속 DragonFly BSD 및 DesktopB의 기본 루트 셸입니다.SD.
「 」를 참조해 주세요.
레퍼런스
- ^ "Release 6.22.04". 26 April 2021. Retrieved 22 May 2021.
- ^ "remove clause 3 of the copyright". 2002-03-08.
- ^ "Remove clause 3 of the copyright (changed in other files 2002-03-08)". 2014-07-14.
- ^ "Tcsh-6.00 release". 1991-07-04.
- ^ a b c d Ken Greer (3 Oct 1983). "C shell with command and filename recognition/completion". Newsgroup: net.sources. Retrieved 29 December 2010.
- ^ tcsh(1) man 페이지tcsh.
- ^ 2000년 6월 17일 tcsh-17의 파일을 수정합니다.
- ^ Ubuntu - 패키지 CSH 상세.Packages.ubuntu.com 를 참조해 주세요.
- ^ Debian - 패키지 CSH 상세.Packages.debian.org 를 참조해 주세요.
- ^ Ubuntu - 패키지 tcsh 상세.Packages.ubuntu.com 를 참조해 주세요.
- ^ Debian - 패키지 tcsh 상세.Packages.debian.org 를 참조해 주세요.
- ^ "The T in tcsh". Archived from the original on 14 April 2012. Retrieved 31 October 2013.
- ^ Michael Urban; Brian Tiemann (2002). Sams teach yourself FreeBSD in 24 hours. Sams Publishing. p. 56. ISBN 978-0-672-32424-6.
- ^ POSIX 2008 Shell 명령어 "시스템 V 쉘은 POSIX.1-2008 쉘 및 유틸리티 볼륨의 시작점으로 선택되었습니다.BSD C 쉘은 대상에서 제외되었습니다.