Shell
개념¶
셸(Shell)은 커널과 사용자간의 다리역할을 하는 것으로 사용자로부터 명령을 받아 그것을 해석하고 프로그램을 실행한다. 리눅스에는 sh를 기본으로 ksh와 csh 계열의 장점을 결합한 bash(Bourne Again shell)을 표준으로 한다.
Shell 확인 및 변경¶
확인¶
변경¶
셸 환경설정¶
변수¶
Shell 변수¶
특정한 셸(Shell)에서만 적용되는 변수, 변수명=값으로 사용할 수 있으며 변수명 앞에 $를 붙이고 echo 명령으로 변수값을 호출한다.
환경 변수¶
| 변수 | 설명 |
|---|---|
| HOME | 홈 디렉토리 |
| PATH | 실행 파일을 찾는 디렉토리 |
| LANG | 셸에서 기본으로 지원하는 언어 |
| TERM | 로그인한 터미널 종류 |
| PWD | 사용자의 현재 작업 디렉토리 |
| SHELL | 사용자의 로그인 셸 |
| USER | 사용자 이름 |
| DISPLAY | X에서 프로그램 실행 시 출력되는 창 |
| PS1 | 프롬프트 변수 |
| PS2 | 2차 프롬프트 변수 |
| HOSTNAME | 시스템의 호스트명 |
| 도착한 메일이 저장되는 경로 | |
| TMOUT | 일정 시간 작업하지 않을 경우 로그아웃시키는 시간 |
| UID | 사용자 UID |
bash 주요 기능¶
history¶
사용자가 입력한 명령어를 확인, !로 대체하여 사용할 수 있다.
!를 이용한 history 명령
| 명령어 | 설명 |
|---|---|
| !! | 마지막에 사용한 명령 실행 |
| !n | n번째로 사용한 명령을 실행 |
| !-n | 반대로 n번째 사용한 명령 실행 |
| !문자열 | 최근 사용한 ‘문자열’로 시작하는 명령 |
| !?문자열? | 최근 사용한 ‘문자열’을 포함하는 명령 |
| ^문자열1^문자열2 | 마지막 명령에서 문자열1을 2로 변경 실행 |
히스토리 관련 환경변수
| 변수 | 설명 |
|---|---|
| HISTSIZE | 명령의 개수로 이 값 내에서만 검색이 가능 |
| HISTFILESIZE | 실질적인 히스토리 파일의 사이즈 |
| HISTFILE | 히스토리 파일의 위치를 보여줌 |
| HISTCONTROL | 중복되는 명령에 대한 기록 유무 |
| HISTTIMEFORMAT | 히스토리 명령 시 출력되는 시간 형식 |
alias¶
지정한 명령을 설정해둔 별명을 통해서 호출하는 기능
셸 관련 파일 및 디렉토리
| 파일 또는 디렉토리 | 설명 |
|---|---|
| /etc/profile | 시스템 전체에 적용되는 환경변수와 시작관련 프로그램 설정 |
| /etc/bashrc | 시스템 전체에 적용되는 alias와 함수 설정 |
| ~/.bash_profile | 개인 사용자의 환경 설정과 시작 프로그램 설정 관련 파일 |
| ~/.bashrc | 개인 사용자가 정의한 alias와 함수들이 있는 파일 |
| ~/.bash_logout | 개인 사용자가 로그아웃할 때 수행하는 설정을 지정 |
| /etc/profile.d | 몇몇 응용프로그램들이 시작할 때 필요한 스크립트가 위치 |
Last update :
15 décembre 2022
Created : 14 septembre 2019
Created : 14 septembre 2019