반응형

프롬프트

리눅스에 처음 로그인하게 된다면 다음과 같은 문자열이 보일 겁니다. 이를 프롬프트라고 하며 현재 어떤 사용자로 로그인 돼있는지, 호스트 이름은 무엇인지, 지금 위치한 디렉토리를 알 수 있습니다. 또한 이 뒤의 기호로 슈퍼 사용자(root) 구분이 가능합니다.

RedHat Linux와 유사한 Rocky Linux를 사용했습니다.
root로 로그인하면 맨 뒤 기호가 다른 것을 볼 수 있습니다.

 

 

이렇게 처음 로그인하면 드디어 명령어를 입력할 수 있는 상태가 됩니다. 로그인과 함께 등장하는 셸을 '로그인 셸'이라고 합니다. 쉽게 비유하자면 '웹 시작 페이지'라고 생각해도 좋을 것 같습니다. 리눅스에서 사용하는 sh 셸이나 bash 셸 등 여러 가지가 존재하지만, 시작 페이지를 지정하듯이 시작할 때 어떤 셸을 사용할지 지정할 수 있습니다. 이를 로그인을 하면 사용하게 되는 셸이라서 '로그인 셸'이라고 이름 붙인 것 같습니다.

 

현재 자신이 사용하고 있는 셸을 확인하고자 한다면 'echo $shell'을 입력하면 됩니다.

 

이렇게 직접 입력하고 그 결과를 확인하는 방법을 대화형(인터렉티브) 방식이라고 합니다. 반면 실행하고 싶은 명령어들을 미리 파일에 기록하고 그 파일을 셸에 넘겨주는 방식으로 수행하는 방식도 있는데, 이 파일을 셸 스크립트라고 합니다.

 

셸의 종류

  1.  sh
    AT&T 벨 연구소의 스티븐 본(Steven Bourne)이 만들어 본 셸이라고도 불리는 sh 셸은 상당히 오래전에 개발된 셸입니다. 이는 리눅스뿐만 아니라 다른 여러 운영 체제에서 사용할 수 있지만, 앞서 언급한 것처럼 오래된 셸이라 기능이 적기 때문에 현재는 로그인 셸로는 잘 사용되지 않습니다.

  2. csh
    이 셸도 sh처럼 오래됐으며 C셸이라고도 불립니다. sh보다 대화형 조작이 편리해 인기가 많았지만, 문법이 sh와는 크게 달라 스크립트 작성에는 적합히자 않습니다. 현재는 더 개선된 tcsh가 등장해 잘 사용되지 않습니다.

  3. bash
    sh를 바탕으로 기능이 여럿 추가된 셸입니다. sh와 호환성이 있기 때문에 sh를 대체해 많이 사용되고 있습니다. 또한, 대화형 조작에 필요한 기능을 두루 갖추고 있기 때문에 많은 리눅스에서 기본 로그인 셸로 사용되며 스크립트 작성에도 많이 사용되고 있습니다.

  4. zsh
    bash와 tcsh의 기능에 더해 더욱 다양한 기능이 추가된 셸입니다. 이를 익히기에는 시간이 걸려 초보자들에게는 적합하지 않지만, 다양한 기능이 존재하는 만큼 숙지한다면 작업 효율을 크게 늘릴 수 있습니다.
반응형