| 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 | 
| 9 | 10 | 11 | 12 | 13 | 14 | 15 | 
| 16 | 17 | 18 | 19 | 20 | 21 | 22 | 
| 23 | 24 | 25 | 26 | 27 | 28 | 29 | 
| 30 | 
													Tags
													
											
												
												- Dijkstra
 - Two Points
 - binary search
 - MYSQL
 - String
 - union find
 - DP
 - Trie
 - 이진탐색
 - 스토어드 프로시저
 - Stored Procedure
 - 다익스트라
 - two pointer
 - Hash
 - SQL
 - 그래프
 - Brute Force
 
													Archives
													
											
												
												- Today
 
- Total
 
codingfarm
shell 본문
- shell은 리눅스 커널과 사용자를 연결하는 역할을 수행한다.
 - 리눅스의 기본제공 shell인 bash shell은 UNIX의 shell인 bourne shell과 호환성을 유지하면서 편리한 기능을 제공하여 리눅스 뿐만 아니라 UNIX에서도 널리 사용된다.
 
1. 셸의 기능과 종류
- shell은 사용자와 리눅스 커널사이에서 중간자 역할을 수행한다.
 - bourne shell, bash shell 등 여러 종류가 있다.
 
1.1 shell의 기능
- 명령어 해석기 기능
- 사용자와 커널 사이에서 명령을 해석하여 전달한다.
- 가령 사용자가 로그인을 하면 shell이 자동으로 실행되어 사용자가 명령을 입력하기를 기다린다.
 
 - 프롬프트 : 셸이 사용자의 명령을 기다리고 있음을 나타내는 표시
 - 셸의 작동방식
- 대기상태로 있다가 사용자가 입력한 명령이나 스크립트를 읽어들여 이 명령이 셸 자체의 내장명령인지 판단
 - 내장명령일 경우 추가 작업 없이 바로 실행
 - 내장명령이 아니면 별도의 실행파일이 있다는 것이다.
 - 셸은 자식 프로세스를 만들고 이 자식프로세스가 실행파일을 실행하게 한다.
 - 실행되는 동안 부모인 Shell은 대기상태가 된다.
 - 자식 프로세스가 실행을 종료하면 shell의 대기상태가 해제되어 복귀하면서 다시 프롬프트를 출력한다.
 
 
 - 사용자와 커널 사이에서 명령을 해석하여 전달한다.
 - 프로그래밍 기능
- shell 자체에 프로그래밍 기능이 있으므로 프로그램도 만들 수 있다.
 - 여러 명령을 자동화 시킬 수 있다.
 - 이렇게 작성된 shell program을 shell script라 부른다.
 
 - 사용자 환경 설정 기능
- 사용자 환경을 설정할 수 있도록 초기화 파일 기능을 제공한다.
 - 명령을 찾아오는 경로를 설정한다.
 - 파일과 디렉터리를 새로 생성할 때 기본 권한을 설정한다.
 - 다양한 환경 변수등을 설정한다.
 - 사용자가 로그인을 할 때 이 초기화 파일이 실행되어 사용자별로 특성에 맞게 초기 환경이 설정된다.
 
 
2. 셸 기본 사용법
- bash shell의 사용법에 대해 알아보겠다.
 
2.1 shell 지정하고 바꾸기
- 현재 사용중인 shell의 종류를 알아보자
 - grep명령으로 사용자 정보를 가지고 있는 /etc/passwd 파일에서 특정 사용자의 정보를 찾아 확인한다.
 

- 가장 앞에 로그인 ID가 나오고 마지막에 사용자의 기본셸인 /bin/bash가 나온다.
 - crow사용자는 로그인 할 때 기본 shell로 bash shell이 지정되는 것이다.
 - 로그인 셸 : 사용자가 로그인을 하면 자동으로 생성되는 기본 셸
 
'Linux > Ubuntu' 카테고리의 다른 글
| 특수 접근 권한 SetUID, SetGID (0) | 2021.03.05 | 
|---|---|
| 입출력 방향 바꾸기 (0) | 2020.11.15 | 
| vi (0) | 2020.11.03 | 
| 파일 링크(file link) (0) | 2020.10.31 | 
| vim 설치 및 설정 (0) | 2020.10.20 | 
			  Comments