devops

shell과 bash의 간단한 개념 정리 본문

DevOps/OS

shell과 bash의 간단한 개념 정리

vataops 2021. 8. 26. 10:59
반응형

shell

  • 쉘은 명령어 처리기라고 불린다. 운영 체제에서 다양한 기능과 서비스를 구현하기 위해 인터페이스를 제공하는 프로그램이다.
  • 커널과 사용자 사이에서 매개체 역할을 한다고 보면 된다.
  • bash, ksh, csh 등이 있다.

bash

  • Bash는 shell의 한 종류로써, Bourne Again Shell의 축약어다. 
  • 기존 Bourne 쉘과 호환이 가능하며, Bourne 쉘에 비해 많은 기능을 제공한다.
  • 리눅스 쉘이라고 불리며 리눅스에서 가장 많이 사용된다.
  • bash는 5개의 설정 파일을 가지고 있다.
  • 일반적으로 전역적인 파일은 /etc 디렉토리에 위치한다. 지역적인 파일은 사용자 ~/.bashrc와 같이 home에 위치하는 경우가 많다.

1) /etc/profile
환경 변수와 bash가 수행될 때 실행되는 프로그램을 제어하는 전역적인 시스템 설정과 관련된 파일.

2) /etc/bashrc
시스템 전역(모든 사용자)에 대한 환경설정 파일이다. 새로운 bash가 실행될 때마다 읽어들인다.

3) ~/.bash_profile
사용자의 환경 변수와 bash가 수행될 때 실행되는 프로그램을 제어하는 지역적인 시스템 설정과 관련된 파일. 로그인 시 설정 내용을 읽는다. 이 환경변수는 오직 사용자에게만 한정된다.

4) ~/.bashrc
별칭(alias)와 bash가 수행될 때 실행하는 함수를 제어하는 지역 시스템 설정과 관련된 파일. 이는 /etc/bashrc가 수행된 다음 바로 수행된다.

5) ~/.bash_logout
사용자가 로그아웃 직전에 실행하는 프로그램에 관한 지역적인 시스템 설정과 관련된 파일.


$ cat /etc/shells 
사용가능한 shell 목록 보기

$ echo $SHELL
현재 사용 중인 shell 확인

반응형
Comments