일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 함수
- Azure
- Linux
- maven
- 3티어 아키텍처
- it기사
- go
- git hub
- docker
- AWS
- aws사용자모임
- terraform
- 프로세스 관리
- 애저
- 명령어
- nexus
- 사용자 계정 관리
- 리눅스
- GIT
- dockerfile
- 클라우드
- 표준 라이브러리
- 변수
- jenkins
- python
- AI챗봇
- 파이썬
- AI
- awskrug
- open ai
- Today
- Total
We are Architect
5. 쉘(Shell) 본문
* 쉘의 기능과 종류
- 쉘이란? 사용자와 커널을 이어주는 프로그램이다.
- 쉘의 기능은 명령어 해석기능, 프로그래밍 기능, 사용자 환경 설정 기능이 존재한다.
- 쉘의 종류는 다음과 같다.
- 본 쉘: 스티븐 본이 만들고 초기에 만들어진 쉘이라 단순하고 처리 속도가 빠르다.
- C 쉘: 빌 조이가 만들고 본 쉘에 없는 history, alias 기능 등이 추가되어 있다.
- 콘 쉘: 데이비드 콘 쉘이 만들었다.
- bash 쉘: 본 쉘을 기반으로 업그레이드를 해서 만들어졌다.
[ 기본 쉘을 바꾸는 명령어 ]
- chsh: 새로운 쉘 생성
- chsh -l : 쉘 조회
- chsh -s /bin/sh user1 : 사용자의 쉘을 로그인 쉘을 바꿀 때.
* 쉘의 기본 사용법
- 특수문자 사용하기: 사용자가 더욱 편리하게 명령을 입력하고 실행할 수 있도록 다양한 특수문자 사용.
- * : 임의의 문자열을 나열하는 특수문자로 0개 이상의 문자로 대체.
- ls * : 현재 모든 디렉터리의 모든 파일과 서브 디렉터리를 나열.
- cp * /tmp: 현재 디렉터리로부터 /tmp 밑에 모든 파일을 복사.
- ls -F t*: t로 시작하는 모든 파일을 찾아준다.
- cp *.txt ../ch3: 확장자가 txt인 모든 파일을 상위 디렉터리 아래의 ch3 디렉터리에 복사한다.
- ls -l l*s: 파일명이 l로 시작하고 s로 끝나는 모든 파일을 찾아준다.
- 특수 문자 ; 와 | : 명령어와 명령을 연결.
- ;은 연결된 명령을 왼쪽부터 차례로 실행.
- |(파이프) 은 왼쪽 명령의 실행 결과를 오른쪽으로 전달.
- date; ls; pwd: data로 날짜 출력하고 현재 디렉터리 파일 리스트 출력하고 현재 경로까지 출력.
- ls -al / | more: 루트 디렉터리의 세부 파일리스트가 페이지 단위로 출력되는 명령어.
* 쉘 변수와 환경변수
- 쉘의 환경을 설정하기 위한 값을 저장할 수 있도록 쉘 변수와 환경 변수를 제공.
- 쉘 변수: 쉘에서만 사용되는 변수. 해당 쉘 세션에서만 작동.
my_var="Hello World"
echo $my_var
- 환경 변수: 현재 세션의 쉘뿐만 아니라 모든 쉘에 적용되는 변수
MY_VAR="Hello"
export MY_VAR
- set: 전체 변수 출력.
- env: 환경 변수 출력.
- alias: 별칭이라는 뜻. 명령어를 축약할 때 사용. 현재 세션에서만 유효.
alias kubectl=k
- 환경 설정 파일: 사용자가 로그인할 때 자동으로 실행되는 명령을 저장한 것이 환경 파일.
- 시스템 환경 설정 파일과 사용자 환경 설정 파일이 있음.
- /etc/ 에 있는 쉘보다 ~/.bashrc, ~/.bash_profile 이 우선순위로 적용.
- 접근 권한 명령어
- chmod: 기능 파일이나 디렉터리의 접근권한을 설정하는 명령어.
- 옵션 -R: 하위 디렉터리까지 모두 변경할 수 있다.
[ 기호 모드를 사용한 접근 권한 설정 예 ]
권한 표기 | 의미 |
u+w | 소유자(u)에게 쓰기(w) 권한 부여(+) |
u-x | 소유자(u)의 실행(x) 권한 제거(-) |
g+w | 그룹에 쓰기 권한 부여. |
o-r | 다른 사용자에게 읽기 권한 제거. |
g+wx | 그룹에 읽기, 실행 권한 부여. |
a+rwx | 모든 사용자에게 읽기, 쓰기, 실행 권한 부여. |
u=rwx | 소유자에게 읽기, 쓰기, 실행 권한 부여. |
go+rw | 그룹사용자와 다른 사용자에게 읽기, 쓰기 권한 부여. |
u+x,g+rw | 소유자에게 실행권한 부여, 그룹사용자에게 읽기,쓰기 권한 부여. |
'운영체제 > Linux' 카테고리의 다른 글
7. 프로세스 관리(2) (0) | 2024.11.25 |
---|---|
6. 프로세스 관리 (0) | 2024.11.24 |
4. 문서 편집기 (0) | 2024.11.21 |
3. 디렉터리와 파일 그리고 명령어까지..(2) (0) | 2024.11.21 |
2. 디렉터리와 파일 그리고 명령어까지.. (10) | 2024.11.13 |