Notice
Tags
- 티스토리챌린지
- Artificial_Intelligence
- SingleProject
- 자격증
- codingTest
- Univ._Study
- kubeflow
- Algorithm
- 리눅스마스터2급
- programmers
- c++
- C
- Android
- datastructure
- tensorflow
- Baekjoon
- study
- app
- 2023_1st_Semester
- Unix_System
- Operating_System
- Kubernetes
- Python
- 오블완
- Personal_Study
- Linux
- Database_Design
- Image_classification
- Java
- cloud_computing
코딩 기록 저장소
[PART2] 리눅스 운영 및 관리 - Ch.02 셸(Shell) 관리 본문
01. 셸의 특징 및 명령어
셸 (Shell)
- 사용자가 입력한 명령어를 해석하여 커널에 전달함
- 윈도(도스)에서의 'command,com'과 유사한 기능을 수행
- 사용자가 로그인 시 실행되어 사용 환경 제공
- 셸 프로그래밍 언어(스크립트 언어)
- 리다이렉션(Redirection)과 파이프( | ) 기능을 수행
- 사용자 셸 프롬프트(본 셸 계열 : $, C 셸 계열 : %)
종류 | 실행 파일 | 특징 | |
본 셸 계열 | 본 셸 | /bin/sh | - 1979년 Bell 연구소의 Steve Bourne이 개발 - 유닉스의 기본 셸 |
콘 셸 | /bin/ksh | - 1986년 AT&T사의 David Korn이 개발 - Bell 연구소에서 개발한 본 셸의 확장 버전 - 명령어 완성 기능, 히스토리 기능 지원 |
|
배시 셸 | /bin/bash | - 1989년 Brian Jhan Fox가 개발 - 본 셸을 기반으로 GNU 프로젝트에서 개발 - POSIX 호환으로 다양한 운영체제에서 사용 가능 (리눅스, 맥OS X 등) - 명령어 자동 완성, 명령어 편집, 히스토리, 명령어 치환 기능 등 지원 - 리눅스의 기본 셸 |
|
지 셸 | /bin/zsh | - 1990년 Paul Falstad가 개발 - 본 셸의 확장 버전으로, 콘 셸의 개선 버전 셸 (Shell) - 명령어 자동 완성, 명령어 편집, 강력한 히스토리 기능 지원 - 탭이나 방향키를 이용해 선택 기능 지원 |
|
C 셸 계열 | C 셸 | /bin/csh | - 1981년 Berkley 대학의 Bill Joy가 개발 - C 언어의 특징을 포함 - 다양한 프로그래밍 작성 기능 지원 - 히스토리, 별칭, 작업 제어 등의 기능 지원 |
TC 셸 | /bin/tcsh | - 1982년 Ken Greer가 개발 - C 셸의 확장 버전으로, BSD 계열에서 많이 사용 - 명령어 편집, 명령어 자동 완성, 자동 로그아웃 기능 지원 - 사용자 로그인 상태, 터미널 모니터링 기능 지원 - emacs, history explorer 기능 지원 |
셸 관련 파일
- /etc/shells
- 사용자들이 사용 가능한 셸을 정의하는 파일
[root@localhost ~]# cat /etc/shells
- /etc/passwd
- 사용자의 계정 정보가 저장되는 파일
[root@localhost ~]# cat /etc/passwd
셸 관련 명령어
- echo $SHELL
- 현재 로그인한 사용자가 사용하는 셸을 확인하는 명령어- 기본 형식
[root@localhost ~]# echo [셸 환경변수]
- 기본 형식
- chsh
- 사용할 셸 종류를 변경하는 명령어
- 기본 형식
[root@localhost ~]# chsh [옵션] [셸 종류]
- 옵션
-l '/etc/shells' 파일의 내용을 출력 -s 지정하는 셸로 변경 -u 도움말 출력
- 기본 형식
- usermod
- 사용자 계정 정보를 변경하는 명령어
- 변경 예시
[root@localhost ~]# usermod -s /bin/csh test
- 변경 예시
02. 환경설정
환경변수
- 환경변수는 현재 사용하고 있는 셸(Bash 등)의 실행 파일에 대한 위치를 저장하는 변수를 말하며 변수명과 값으로 구성됨
- 종류
전역 변수 - 전체 셸에 영향을 미치는 변수
- 하위 셸에 기능 상속 가능지역 변수 - 특정 사용자에게만 적용되는 변수
- 하위 셸에 상속 불가능 - 주요 환경 변수
DISPLAY X 윈도 환경에서 화면 출력을 위해 접속할 x 서버의 주소 및 장치 번호 HOME 사용자의 홈 디렉터리 HOSTNAME 호스트 명 LANG 기본 지원 언어 PS1 셸 프롬프트 선언 변수 PS2 2차 셸 프롬프트 선언 변수 PWD 현재 작업 디렉터리 SHELL 로그인 셸 TERM 터미널 명 TMOUT 자동 로그아웃 시간 USER 사용자 명 - 환경변수 관련 명령어
- export
- 환경변수 목록을 확인하는 명령어 - echo $변수명
- 화면에 텍스트를 출력하는 명령어 - export 변수명=변수값
- 해당 변수명에 변수값을 등록하는 명령어 - export 변수명=$변수명:변수값
- 현재 PATH에 경로를 추가하는 명령어
- export
'개인 공부 > [자격증] 리눅스 마스터 2급' 카테고리의 다른 글
[PART2] 리눅스 운영 및 관리 - Ch.01 파일 시스템 관리 (0) | 2024.11.11 |
---|---|
[PART1] 리눅스 일반 - Ch.03 기본 명령어 (0) | 2024.11.09 |
[PART1] 리눅스 일반 - Ch.02 리눅스의 설치 (1) | 2024.11.08 |
[PART1] 리눅스 일반 - Ch.01 리눅스의 이해 (1) | 2024.11.07 |