2. 표준 입출력, 표준 에러
표준 입력(STDIN)
표준 입력(STDIN, STanDard INput): 외부로부터 OS가 외부 입력 장치로부터 받는 표준 인터페이스(STanDard INput). 애플리케이션은 OS가 전달해 준 표준 입력 데이터를 받는다.
- ID = 0
- tty: 물리 터미널 (내 로컬 PC에서 처리)
- pty: 가상 터미널 (tty는 동시에 한 명밖에 사용할 수 없으므로 원격에서 접속하여 처리하기 위함)
표준 출력(STDOUT)
표준 입력(STDOUT, STanDard OUTput): 현재 쉘을 실행한 console 또는 terminal
OS가 내용을 외부 출력 장치(Ex. 모니터, 프린터)로 보내는 표준 출력 인터페이스(STanDard OUTput)
OS는 애플리케이션이 전달해준 표준 출력 데이터를 받는다.
- ID = 1
표준 에러(STDERR)
표준 에러(STDERR, STanDard ERRor)
OS가 내용을 외부 출력 장치로 보내는 표준 출력 인터페이스
OS는 애플리케이션이 전달해준 표준 에러 데이터를 받는다.
- ID = 2
표준 출력과 동일하고 파일로 내보낼 수 있다. Ex) GC) Cloud Logging
⭐ 리다이렉션
표준 출력과 표준 에러는 원리가 같기 때문에 표준 출력만 모니터에 출력된다.
리다이렉션: 출력 또는 입출력 방향을 바꾸는 것 (>, >>)
- >: 덮어쓰기
- Ex) [명령어] > [파일] : ls-l > result ls-l의 결과를 result 파일에 저장
- Ex)
# python file 내용: cat
python file.py
# cat 출력
python file.py > cat.txt 2 > &1
# 2> log id, 1> output id
# catcat 출력 -> 로그 완료
- # python file 내용: cat python file.py # cat 출력 python file[.py](<http://cat.py>) > cat.txt 2 > &1 # 2> log id, 1> output id # catcat 출력 -> 로그 완료
- >> : 내용 추가 (기존 내용 보존)
파이프: 이전 실행 명령 결과를 받아온다. ( | )
Ex) A | B → A의 명령어의 결가 B로 전달돼서 B 결과가 출력됨
표준 출력&표준 에러 리다이렉션
cat.txt > text.log 2> &1
표준 입력 리다이렉션
cat > file.txt > EOF
termination ID
EOF: End OF File, 파일의 끝까지 저장
EOL: End Of Line, 파일의 마지막 줄
'Computer Science > Operating System' 카테고리의 다른 글
운영체제란? OS 종류, Linux 종류, 커널이란? 프로세스와 쓰레드의 차이점? 쓰레드란? (0) | 2023.11.27 |
---|---|
커널(Kurnel)이란? (0) | 2023.07.09 |
운영체제 종류 - Unix와 Linux (0) | 2023.07.09 |
버전 표기법 : SW 라이브러리 버전 읽기 (0) | 2023.07.09 |