[Linux] tee를 이용해 출력을 화면과 파일에 동시에 출력하기

Linux 기반 운영체제에서 tee 명령어를 사용해 화면과 파일에 동시에 출력해보자


환경 및 선수조건

  • Linux
  • Bash shell(/bin/bash)


tee 명령어

  • tee 명령어는 다음 아래 사진처럼 명령어의 출력 결과를 파일과 화면에 동시에 출력할 수 있도록 해주는 명령어입니다.
  • stdin을 받아서 stdout과 하나 이상의 파일에 그 입력을 출력하는겁니다.

기본 사용법

  • [ -a ] : 덮어쓰기 말고 해당 파일에 추가해서 입력합니다.
  • [ -i ] : interrupt를 무시하는 옵션
  • [ File ... ] : 파일들 이름입니다.

tee [ -a ] [ -i ] [ File ... ]


예제 - 명령어의 결과를 파일과 stdout으로 출력하기

$ echo test | tee tee-test-file.txt
test
$ cat tee-test-file.txt
test


예제 - shell에서 파일 생성하기

$ tee tee-test-file.txt << EOF
> Multi line test
> 1
> 2
> 3
> End!
> EOF
Multi line test
1
2
3
End!
$ cat tee-test-file.txt
Multi line test
1
2
3
End!


참고자료

[Linux] 쉘 스크립트에서 멀티프로세스(혹은 스레드) 기능 사용하기

> 백그라운드로 명령어를 실행해서 병렬적으로 실행되는 멀티 프로세스 환경을 만들어보자.## 환경- Linux 기반 시스템- Bash shell(/bin/bash)## 멀티프로세스? 병렬처리? 멀티스레드? 백그라운드 프로세스?- 여기서 진행할 방식...… Continue reading