※ Linux Fundamentals 교재를 참고하였습니다!
작업제어 연산자
- 다수의 명령을 처리하는 연산자
; | 명령을 왼편 -> 오른편의 순서로 차례로 수행 |
& | 명령을 백그라운드로 실행 종료할 때까지 기다리지 않고 쉘이 다음 명령 대기 [1] 20220 와 같이 job number와 CPU번호 표시 |
$? | 이전 명령의 종료코드 반환 (성공=0, 실패!=0) |
&& | AND 왼편이 성공적으로 종료하면 오른편 실행 |
|| | OR 왼편이 실패할때만 오픈편 실행 |
# | 주석 |
\ | escape 문자 |
~ \ | 명령행의 끝에 위치하면 명령행이 다음 행으로 이어짐을 의미 |
쉘 변수
- $를 사용
- 대소문자 구분
- 쌍따옴표 스트링은 쉘이 해석
- set : 모든 변수의 값 확인
- unset : 변수 삭제
주요 변수
$HOSTNAME | 호스트 컴퓨터의 이름 |
$USER | 현재 사용자의 이름 |
$UID | 현재 사용자의 식별아이디 |
$SHELL | 현재 사용중인 쉘 |
$HOME | 현재 사용자의 홈디렉토리 |
$PS1 | 쉘 프롬프트 형태 지정 |
$PATH | 쉘 명령에 해당하는 프로그램을 찾는 디렉토리의 순서 경로 : 경로 : 경로 : 경로 |
변수사용
- ${변수명} : 명확하게 구분
- 정의되지 않은 변수는 아무것도 출력하지 않음
- set -u : 에러메시지 출력
쉘과 변수사용
- 주어진 변수를 자식 쉘에 전달
bash | 새로운 자식 쉘 생성 | |
-c | 새로운 쉘에서 command 실행 후 복귀 | |
exit | 상위 쉘 |
export | 주어진 변수를 자식 쉘에 전달 | |
-c | command 실행 후 복귀 | |
env | 인자가 없으면 export된 변수들을 보여줌 | |
-i | export 모두 취소 |
쉘 임베딩
- 명령행에서 새로운 쉘 실행
- $( )
- $var1=one; $echo $var1
- $echo $(var1=5; echo $var1) => 5
- $echo $var1 => one
- ` (백틱) : 백틱으로 묶인 string은 new shell 안에서 실행
이전 쉘 명령
!! | 직전명령 다시 실행 |
history | 사용한 명령 표시 |
'코딩 > Linux' 카테고리의 다른 글
[Linux] I/O 리다이렉션, 파이프, 필터(cat, grep), find, locate, sleep, time (0) | 2022.10.18 |
---|---|
[Linux] 파일이름 확장, 문자패턴 (0) | 2022.10.18 |
[Linux] 쉘(shell) 확장, 명령인자, type, which, alias (0) | 2022.10.18 |
[Linux] 파일명령 : touch, rm, mv, cat, rename (0) | 2022.10.18 |
[Linux] Linux의 계층구조 (0) | 2022.10.18 |