[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!