C 셸

C 셸
원저자빌 조이
발표일1978년 0월 0일(46년 전)(1978-12-00)
안정화 버전
tcsh 6.19.00 / 2015년 5월 21일(9년 전)(2015-05-21)[1]
저장소
  • github.com/freebsd/freebsd-src/tree/main/bin/csh 위키데이터에서 편집하기
프로그래밍 언어C
운영 체제BSD, 유닉스, 리눅스, OS X
종류유닉스 셸
라이선스BSD 라이선스

C 셸(C shell, csh)은 빌 조이가 개발한 유닉스용 셸로, 본 셸보다 한층 강력하고 사용하기 쉬운 셸이다.

csh는 기본적으로 C언어를 전신으로 하여 만들어졌으며 강력한 프로그램 작성 기능을 가지고 있어 C 셸이라 불리게 되었다. 대표적인 기능으로 히스토리, 별명, 작업 제어가 있다. 히스토리는 많은 개발자들에게 유용한 기능으로 과거에 사용한 명령어를 반복하거나 수정하기 매우 편리하다. 별명의 경우 자주 쓰는 긴 명령어를 짧게 사용할 수 있도록 도와주었으며, 작업 제어 기능은 프로세서에 우선순위를 두는 것으로 효율적인 작업이 가능하도록 하였다. 그러나 초기에는 버그가 많아 사용하기에 무리가 있었다.

식 연산자와 문법을 다루는 예

본 셸

#!/bin/sh
if [ $days -gt 365 ]
then
   echo This is over a year.
fi

C 셸

#!/bin/csh
if ( $days > 365 ) then
   echo This is over a year.
endif
2의 10제곱

본 셸

#!/bin/sh
i=2
j=1
while [ $j -le 10 ]
do
   echo '2 **' $j = $i
   i=`expr $i '*' 2`
   j=`expr $j + 1`
done

C 셸

#!/bin/csh
set i = 2
set j = 1
while ( $j <= 10 )
   echo '2 **' $j = $i
   @ i *= 2
   @ j++
end
switch 문의 예

본 셸

#!/bin/sh
for i in d*
do
   case $i in
      d?) echo $i is short ;;
      *) echo $i is long ;;
   esac
done

C 셸

#!/bin/csh
foreach i ( d* )
   switch ( $i )
      case d?:
         echo $i is short
         breaksw
      default:
         echo $i is long
   endsw
end

같이 보기

각주

  1. Zoulas, Christos (2012년 1월 14일). “tcsh-6.18 is now available”. 2013년 11월 3일에 원본 문서에서 보존된 문서. 2012년 1월 16일에 확인함. 
  • v
  • t
  • e
이 글은 운영체제에 관한 토막글입니다. 여러분의 지식으로 알차게 문서를 완성해 갑시다.