Ch04 셸 사용법
- 리눅스 기본셸 = 배시셸
- 유닉스 기본셸 = 본셸
- 셸의 기능
- 명령어 해석기
- 사용자와 커널 사이에서 명령을 해석하여 전달하는 해석기와 번역기 기능,
- 로그인할 때 실행되는 셸을 로그인 셸이라고 함,
- 프롬프트 - 셸이 사용자의 명령을 기다리고 있음을 나타내는 표시
- 내장 명령이 아니라면 별도의 명령 파일이 있음을 뜻하므로, 셸은 자식 프로세스를 만들고 이 자식 프로세스가 명령 파일을 실행하게 한다. 자식 프로세스가 명령 파일을 실행하는 동안 부모인 셸은 대기 상태가 되며, 자식 프로세스가 실행을 종료하면 대기 상태 해제되어 복귀.
- 프로그래밍 기능
- 셸의 프로그래밍 기능을 이용하면 여러 명령ㅇ을 사용하여 반복저긍로 수행하는 작업을 하나의 프로그램으로 만들 수 있는데, 이렇게 작성된 셸 프로그램을 셸 스크립트라고 함.
- 사용자 환경 설정 기능
- 사용자 환경을 설정할 수 있도록 초기화 파일 기능 제공
- 명령어 해석기
- 셸의 종류
- 셸은 유닉스에서 처음 제공하기 시작한 것으로 대부분의 유닉스 시스템이 지원하는 주요 셸은 본셸, C셸, 콘셸, 배시셸
- 일반적으로 명령 입력 실행하는 기능이 비슷하지만 앨리어스 설정이나 초기화 파일, 스크립트를 작성하는 문법 등에 조금 차이가 있다.
- 본셸
- 최초의 셸,
- 개발자 이름인 스티븐 본의 이름을 딴 것.
- 본셸의 명령 이름은 sh,
- 현재 본셸은 기존의 오리지널 본셸이 아니라 본셸의 업그레이드 버전이라 할 수 있는 콘셸이나 배시셸로 심볼릭 링크가 되어 있다.
- C셸
- 명령 이름 csh
- 콘셸
- 데이비드 콘이 개발
- 명령 이름 ksh
- 배시셸
- 본셸을 기반으로 개발된 셸
- 브레인 폭스가 개발
- 명령 이름 bash
- bash는 Bourne Again Shell의 약자. --> 본셸을 업그레이드 했다는 것을 이름에서도 표현.
- 본셸, 콘셀, 배시셸은 기본 프롬프트가 $이고, C셸은 %이다.
- chsh으로 로그인 셸 변경 가능.
- 프롬프트에서 다른 셸을 실행할 수 있는데 이렇게 새로 생성된 셸을 서브 셸이라고 함.
- 실행 파일은 바이너리 파일이므로 cat 명령으로 파일의 내용을 확인할 수 없다.
출력 명령
- echo
- printf
특수문자
- *
- ?
- []
- ~
- ; -->세미콜론은 연결된 명령을 왼쪽부터 차례로 실행
- |(파이프) --> 왼쪽 명령의 실행 결과를 오른쪽 명령의 입력으로 전달
- '' / ""
- ``(백틱/ 맥북에서 option + 원화표시) --> ``로 감싸인 문자열을 명령으로 해석하여 명령의 실행 결과가 바뀌게 된다.
- echo "Today is `date`" --> Today is 2019.11.01.~
- 특수문자 \
- >,<.>>
'Linux' 카테고리의 다른 글
5주 4/5 수 리눅스 CentOS (0) | 2023.04.06 |
---|---|
5주 4/3 월 리눅스 CentOS (0) | 2023.04.03 |
맥북 CentOS9운영체제 (0) | 2023.03.29 |
4주차 / 3.27 월 맥에서 CentOS (0) | 2023.03.29 |
3주차 / 3.22 수 <Linux>CentOS (0) | 2023.03.22 |