bash(Bourne Again Shell)란 무엇인가?
bash(Bourne Again Shell)는 Linux 및 GNU 운영체제와 함께 배포되는, 무료로 사용할 수 있는 Bourne 셸의 기능 강화 버전입니다. 원조격인 sh와 비슷하지만 명령줄 편집(command-line editing)을 비롯해 다양한 기능이 추가되어 있습니다.
bash는 기존의 Bourne 셸(sh)을 한 단계 발전시키기 위해 만들어졌으며, Korn 셸(ksh)과 C 셸(csh)의 유용한 기능까지 상당 부분 수용했습니다. 또한 IEEE POSIX 표준에서 규정하는 셸 표준을 준수하도록 설계되었기 때문에, Bourne 셸용으로 작성된 명령 언어 스크립트라면 bash에서도 별도 수정 없이 실행할 수 있습니다.
라이선스와 지원 환경
bash는 GNU 일반 공중 사용 허가서(GPL) 조건에 따라 배포되며, 대부분의 Unix와 Linux 버전에서 자유롭게 사용할 수 있습니다. 나아가 MS-DOS와 Windows로 포팅된 버전도 존재해, 운영체제의 제약을 크게 받지 않고 활용할 수 있다는 점이 큰 장점입니다.
'Bourne again'이라는 이름의 유래
Bash 공식 레퍼런스 매뉴얼에 따르면, bash라는 이름은 "Bourne-again SHell"의 두문자어(acronym)입니다. 이는 Bourne 셸의 개발자인 스티븐 본(Stephen Bourne)의 성을 활용한 말장난으로, 영어 표현 "born again(거듭나다)"과 발음이 같다는 점을 빗대어 '기존 셸을 계승해 새롭게 거듭난 셸'이라는 의미를 담고 있습니다.
결국 bash는 기존 Bourne 셸의 상위 집합(superset)으로서, 대부분의 Bourne 셸 프로그램과 호환성을 유지하면서도 더욱 강력하고 편리한 기능을 제공하는 셸이라 할 수 있습니다.