쉘은 유닉스나 GNU/리눅스 같은 운영체제의 명령 해석기로 다른 프로그램을 실행하는 프로그램이다. 컴퓨터 사용자에게 유닉스/GNU 리눅스 시스템에 대한 인터페이스를 제공하여 사용자가 일부 입력 데이터로 다른 명령이나 유틸리티/툴을 실행할 수 있도록 한다.
쉘이 프로그램 실행을 마치면, 표준 출력 장치인 화면의 사용자에게 출력을 보낸다. 이러한 이유로, "명령 해석기"라고 불린다.
쉘은 명령 해석기 이상의 언어로서 조건부 실행, 루프, 변수, 함수 등과 같은 완전한 프로그래밍 언어 구조를 가진 자체 프로그래밍 언어이다.
그렇기 때문에 유닉스/GNU 리눅스 셸이 윈도우즈 쉘에 비해 더 강력하다.
이번 포스팅에서는 유닉스/GNU 리눅스에서 가장 많이 사용되는 오픈 소스 셸을 살펴본다.
Bash Shell
Bash는 Bourne Again Shell을 의미하며, 오늘날 많은 Linux 배포판의 디폴트 쉘이다. 또한 sh와 호환되는 쉘이며 프로그래밍과 상호 작용 사용을 위한 sh보다 실용적인 개선을 제공한다. 여기에는 다음 특징이 포함된다.
명령줄 편집
작업 제어
무제한 크기 명령 기록
셸 기능 및 별칭
무제한 크기 인덱싱된 어레이
2 ~ 64 사이의 모든 베이스에서 정수 산술
Tcsh/Csh Shell
Tcsh는 강화된 C 쉘로, 대화형 로그인 셸과 셸 스크립트 명령 프로세서로 사용될 수 있다. Tcsh는 다음과 같은 특징을 가지고 있다.
C와 같은 구문
명령줄 편집기
프로그래밍 가능한 단어 및 파일 이름 완성
철자 보정
작업관리
Ksh Shell
Ksh는 Korn 쉘을 의미하며 David G. Korn에 의해 디자인되고 개발되었다. 완전하고, 강력하고, 높은 수준의 프로그래밍 언어이며, 또한 다른 유닉스/GNU 리눅스 쉘과 마찬가지로 대화형 명령 언어다.
Zsh Shell
Zsh는 상호작용하도록 설계되었으며, bash, tcsh, ksh와 같은 다른 유닉스/GNU 리눅스 쉘의 많은 기능을 포함하고 있다. 또한 사용할 수 있는 다른 껍질들과 마찬가지로 강력한 스크립트 언어다. 다음과 같은 고유한 특징이 있다.
파일 이름 생성
시작 파일
로그인/로그아웃 감시
마감주석
개념 지수
변수 색인
함수 색인
메인 페이지에서 찾을 수 있는 키 인덱스 등
Fish
Fish는 "Friendly Interactive Shell"를 의미하며 2005년에 개발되었다. 완전히 상호작용하고 사용자에게 친숙한 것으로, 다른 쉘처럼 다음과 같은 꽤 좋은 특징을 가지고 있다.
맨 페이지 완성
웹 기반 구성
자동 제안
깨끗한 스크립트로 전체 스크립트 가능
256단말기 기술 지원
포스팅을 마치며
이들은 모두 Unix/GNU 리눅스에서 사용할 수 있는 것은 아니지만 다른 Linux 배포판에 이미 설치된 셸을 제외하고 가장 많이 사용되는 쉘이다. 유용하고 더 많은 정보가 제공되기를 바라며, 좋은 의견을 공유해주세요.
'SW > 리눅스' 카테고리의 다른 글
Linux용 오픈 소스 음악 제작 소프트웨어 종류 및 추천 (0) | 2019.01.18 |
---|---|
Linux 시스템용 PDF 문서 뷰어 종류 및 추천 (0) | 2019.01.18 |
Microsoft Office 대체 솔루션 종류 및 추천 (0) | 2019.01.17 |
Linux 비디오 편집 소프트웨어 종류 및 추천 (0) | 2019.01.16 |
Linux용 클립보드 관리자 종류 및 추천 (0) | 2019.01.16 |