Computer >> 컴퓨터 >  >> 프로그램 작성 >> BASH 프로그래밍

Unix 셸 팁:Bash에서 다른 로그인 셸로 변경

질문: 현재 실행 중인 Unix 셸이 무엇인지 어떻게 알 수 있습니까? 내 Unix 셸을 일시적으로나 영구적으로 변경하는 방법을 설명할 수 있습니까? (예:bash에서 tsh로).

답: $0, exec, chsh -s를 사용하여 이를 달성할 수 있습니다. . 이 문서에서는 이러한 작업을 수행하는 방법을 자세히 살펴보겠습니다.

1. 현재 내 Unix 셸은 무엇입니까?

echo $0 명령을 사용하여 아래와 같이 현재 쉘 이름을 가져옵니다.

$ echo $0
/bin/bash

2. 현재 쉘을 다른 유형으로 변경하는 방법 – 일시적으로 ?

exec 명령어를 사용하여 아래와 같이 임시로 쉘을 변경합니다.

$ echo $0
/bin/bash

$ exec /bin/sh

$ echo $0
/bin/sh

참고: 위의 변경 사항은 일시적입니다. 다시 로그인하면 원래 셸로 돌아갑니다.

3. 현재 쉘을 다른 유형으로 변경하는 방법 – 영구적으로 ?

쉘을 영구적으로 변경하려면 chsh를 사용하십시오. 아래와 같이 명령합니다.

<센터>
$ chsh -s /bin/sh
Password:

참고: 위의 변경 사항은 영구적입니다. 다시 로그인해도 새로운 쉘만 보입니다.

4. 내 시스템에서 사용 가능한 모든 쉘을 어떻게 찾을 수 있습니까?

사용 가능한 모든 쉘은 /etc/shells 파일에 있습니다.

$ cat /etc/shells
# /etc/shells: valid login shells
/bin/csh
/bin/sh
/usr/bin/es
/usr/bin/ksh
/bin/ksh
/usr/bin/rc
/usr/bin/tcsh
/bin/tcsh
/usr/bin/esh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/screen
/bin/ksh93

로그인 쉘을 변경하려면 위의 출력에서만 수행할 수 있습니다. 그러나 현재 셸을 변경하려면 사용 가능한 셸로 이동할 수 있습니다.

5. 새 셸 설치

아래와 같이 새 셸(예:ksh)을 설치할 수 있습니다. 새 셸을 설치한 후 영구 로그인 셸로 사용하거나 명령줄 작업을 위한 임시 셸로 사용할 수 있습니다.

$ sudo apt-get install ksh