tcsh

정의
tcsh는 유닉스 및 유닉스 계열 운영체제에서 사용되는 명령어 해석기(쉘)로, C 쉘(csh)의 향상된 버전이다. 인터랙티브한 사용 편의성을 높이기 위해 명령어 자동 완성, 히스토리 편집, 파일명 보완 등의 기능을 추가하였다.

개요
tcsh는 1980년대 초반에 미국 캘리포니아 대학교 버클리(UC Berkeley)와 카네기 멜론 대학교(CMU)의 연구원들이 개발하였다. 최초 공개 버전은 1983년이며, 이후 여러 유닉스 배포판에 기본 쉘로 포함되거나 선택적으로 제공되고 있다. 기존의 C 쉘과 거의 동일한 문법을 사용하면서도 사용자의 생산성을 향상시키는 인터랙티브 기능을 제공한다.

어원/유래
tcsh는 “TENEX C Shell”의 약어이다. TENEX는 1970년대에 개발된 초기 운영체제로, 그 시절에 사용되던 명령어 편집 방식을 차용한 것이 tcsh의 주요 특징 중 하나다. 따라서 tcsh라는 명칭은 TENEX의 편집 기능을 포함한 C 쉘이라는 의미를 담고 있다.

특징

구분 내용
문법 호환성 C 쉘(csh)과 완전 호환되며, 기존 csh 스크립트를 그대로 사용할 수 있다.
명령어 자동 완성 Tab 키를 눌러 파일명, 명령어, 변수 등을 자동으로 완성한다.
히스토리 편집 명령어 히스토리를 화살표 키와 Ctrl‑R(역검색) 등으로 탐색·편집한다.
명령어 라인 편집 Emacs 스타일(Ctrl‑A, Ctrl‑E 등) 및 Vi 스타일(Esc 후 명령) 편집 모드를 지원한다.
파일명 보완 와일드카드와 경로 보완 기능이 내장되어 있다.
스펠링 교정 입력 오류 시 가능한 대안을 제시하는 기능을 제공한다(옵션에 따라 활성화 가능).
다중 명령어 프롬프트 프롬프트 문자열을 사용자 정의 변수와 함수로 동적으로 구성할 수 있다.
스크립트 실행 #!/bin/tcsh와 같은 shebang 라인을 사용해 스크립트를 직접 실행한다.

관련 항목

  • csh – tcsh가 기반으로 삼은 원조 C 쉘.
  • Bourne Shell (sh) – 유닉스 초기 쉘 중 하나로, 스크립트 호환성을 위한 변환 도구가 존재한다.
  • Bash (Bourne Again Shell) – GNU 프로젝트에서 개발한 쉘로, 현재 가장 널리 사용되는 유닉스 쉘 중 하나.
  • Zsh – Bash와 tcsh의 기능을 결합하고 확장한 고급 쉘.
  • UNIX – tcsh가 주로 사용되는 운영체제 계열.
  • POSIX Shell – 표준화된 쉘 스크립트 규격으로, tcsh는 POSIX 호환성을 완전하게 지원하지 않는다.
둘러보기

더 찾아볼 만한 주제