본문 바로가기
Old Posts/Linux

[Linux] tee 명령어 사용법

by A6K 2022. 2. 24.

tee 명령어는 화면에 출력되는 내용을 화면에도 출력하면서 파일로 저장하는데 사용된다.

출처 : 위키백과

위키에 tee 명령어를 잘 설명한 그림이 나와있다. 대부분 명령어 파이프라인에서 사용되어 중간 결과를 파일로 저장하는 역할을 한다.

tee [옵션] [파일명]

예를 들어

user@myhost:~$ ls -l
total 0
-rw-r--r-- 1 user user 0 Feb 23 23:51 a
-rw-r--r-- 1 user user 0 Feb 23 23:51 b
-rw-r--r-- 1 user user 0 Feb 23 23:51 c
-rw-r--r-- 1 user user 0 Feb 23 23:51 d

ls 명령어를 실행했을때, 디렉토리 엔트리들이 화면으로 출력된다.

명령어의 결과를 특정 파일로 저장하고 싶을 때,

user@myhost:~$ ls -l > out
user@myhost:~$ cat out
total 0
-rw-r--r-- 1 user user 0 Feb 23 23:51 a
-rw-r--r-- 1 user user 0 Feb 23 23:51 b
-rw-r--r-- 1 user user 0 Feb 23 23:51 c
-rw-r--r-- 1 user user 0 Feb 23 23:51 d
-rw-r--r-- 1 user user 0 Feb 23 23:52 out

이런 식으로 '>' 문자를 이용해서 특정 파일로 리다이렉트 시키면 된다. 하지만 ls -l 명령어의 결과는 화면에 출력되지 않는다. ls -l 명령의 출력 결과를 파싱해서 다른 명령의 인자로 주는 파이프라인을 구성하고 싶다면 중간에서 리다이렉트를 할 수 없다.

tee 명령어는 화면으로 출력되는 결과를 화면에도 출력하고 파일에도 저장하기위해 사용한다.

user@myhost:~$ ls -l | tee out
-rw-r--r-- 1 user user 0 Feb 23 23:51 a
-rw-r--r-- 1 user user 0 Feb 23 23:51 b
-rw-r--r-- 1 user user 0 Feb 23 23:51 c
-rw-r--r-- 1 user user 0 Feb 23 23:51 d
user@myhost:~$ ls -l > out
-rw-r--r-- 1 user user 0 Feb 23 23:51 a
-rw-r--r-- 1 user user 0 Feb 23 23:51 b
-rw-r--r-- 1 user user 0 Feb 23 23:51 c
-rw-r--r-- 1 user user 0 Feb 23 23:51 d

tee 명령을 사용해서 ls -l 명령의 결과 화면이 화면에도 출력되고 파일에도 저장된 것을 볼 수 있다.

옵션

옵션 긴버전 설명
-a --apend 입력 받은 파일에 Append 모드로 씀
-i --ignore-interrupts 인터럽트 시그널을 무시 (Ctrl + C 무시)

관련글

 

리눅스 명령어 사용법들

리눅스 명령어 사용법 ifconfig 네트워크 인터페이스 설정관련 ls 디렉토리 엔트리 정보 출력

hbase.tistory.com

 

댓글