Liux 에서 셸 스 크 립 트 파일 을 작성 할 때 많은 사람들 이 파일 의 첫 줄 에 '\ #! / bin / bash' 라 고 표시 하 는 것 을 자주 볼 수 있 습 니 다.이 말 은 시스템 에 bash 를 강제 적 으로 사용 하여 호 환 되 지 않 는 문제 가 발생 하지 않도록 한 다 는 뜻 이다.
그렇다면 Liux 시스템 에 서 는 bash 외 에 어떤 셸 도구 가 있 습 니까?각자 무슨 차이 가 있 습 니까?현재 시스템 에서 사용 하 는 셸 이 무엇 인지 어떻게 압 니까?서로 간 에 또 어떻게 전환 을 진행 합 니까?본문 은 바로 일일이 해답 한다.
1. 각종 상용 셸 소개
서로 다른 셸 은 서로 다른 기능 을 가지 고 있 습 니 다. 셸 은 스 크 립 트 의 함수 문법 도 결정 합 니 다. Liux 의 기본 셸 은 / bin / bash 입 니 다. 유행 하 는 셸 은 ash, bash, ksh, csh, zsh 등 이 있 고 서로 다른 셸 은 모두 자신의 특징 과 용도 가 있 습 니 다.
ash。ash Shell 은 Kenneth Almquist 에서 작 성 된 것 으로 Linux 에서 시스템 자원 을 가장 적 게 차지 하 는 작은 Shell 입 니 다. 24 개의 내부 명령 만 포함 되 어 있어 서 사용 하기 가 매우 불편 합 니 다 bash。대부분의 Linux 시스템 에서 기본적으로 사용 하 는 셸 입 니 다. bash 셸 은 Bourne 셸 의 무료 버 전 입 니 다. 최초의 유 닉 스 셸 입 니 다. bash 는 help 명령 을 통 해 도움말 을 볼 수 있 는 특징 이 있 습 니 다.포 함 된 기능 은 셸 이 가지 고 있 는 기능 을 거의 포함 할 수 있 기 때문에 일반적인 셸 스 크 립 트 는 실행 경로 로 지정 합 니 다 csh。C 셸 은 '클래스 C' 문법 을 사용 하고 csh 는 C 언어 스타일 을 가 진 셸 로 내부 명령 은 52 개 로 비교적 크다.현재 사용 하 는 것 은 많 지 않 습 니 다. 이미 / bin / tcsh 로 대체 되 었 습 니 다 dash。작고 POSIX 표준 에 부합 되 지만 기능 이 매우 적다.대화 할 때 쓰 는 게 아니 라.. ksh。Korn shell 의 문법 은 Bourne shell 과 같 으 며 C shell 의 사용 하기 쉬 운 특징 도 갖 추고 있다.많은 설치 스 크 립 트 는 ksh 를 사용 합 니 다. ksh 는 42 개의 내부 명령 이 있 습 니 다. bash 에 비해 제한 이 있 습 니 다 tcsh。tcsh 는 csh 의 증강 판 으로 C 셸 과 완전히 호 환 됩 니 다 sh。단축 키 입 니 다. / bin / bash 로 대체 되 었 습 니 다 zsh。zch 는 Linux 에서 가장 큰 Shell 중 하나 로 Paul Falstad 가 완 성 했 으 며 모두 84 개의 내부 명령 이 있 습 니 다.일반적인 용도 라면 이런 셸 을 설치 할 필요 가 없다 2. 현재 셸 을 어떻게 조회 합 니까?
leon@Ubuntu:~$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 9 11 11:14 /bin/sh -> bash
3. 셸 간 의 전환 은 어떻게 합 니까?
예 를 들 어 아래 명령 을 사용 하면 시스템 에 부족 한 셸 을 bash 로 지정 할 수 있 습 니 다.
sudo ln -fs /bin/bash /bin/sh
또는 아래 명령 을 사용 하여 bash 에서 dash 로 전환 할 수도 있 습 니 다.
sudo dpkg-reconfigure dash
팝 업 대화 상자 에서 "아니오" 를 선택 하 십시오!