본셸(Bourne shell, 혹은 줄여서 sh)는 유닉스 버전 7의 기본 유닉스 셸이었다. 오늘날에는 톰프슨 셸로 대체되었는데 톰슨 셸의 실행파일 이름도 sh이다. AT&T 벨 연구소의 스티븐 본(Stephen Bourne)이 개발했고 1977년에 처음으로 유닉스 버전 7에 포함되었다. 많은 유닉스 계정에서 기본 셸로 사용될 만큼 오랫동안 인기를 누렸다.
[편집]예제
본 셸 자체의 기능은 비교적 강력하지 않지만, 유닉스 시스템의 기본 프로그램을 조합하여 사용하면 매우 강력한 기능을 하는 스크립트를 만들 수 있다. 아래는 간단하게 현재 시간을 보고 아침, 점심을 구분해주는 스크립트이다.
1 2 3 4 5 6 7 8 |
#!/bin/sh hour=`date +%H` if [ $hour -lt 10 ]; then echo "아침." fi |
본 셸 자체로는 문장의 참 거짓을 구분해 주는 메커니즘을 갖고 있지 않으며, 대신에 이것은 외부 프로그램이 해 주어야 한다. 위 예제에서는 $hour 에 저장된 현재 시간과, 작거나 같다는 비교 연산자 -lt (lower than의 준말), 10, ] 를 인자로 받는 외부 프로그램인 /bin/[ 가 호출되어 이 역할을 해주고 있다.