티 Linux Shell/명령줄의 명령은 응용 프로그램의 출력을 분할하여 파일 및 모두에 출력을 보냅니다. STDOUT (콘솔 또는 다른 응용 프로그램). 사용 방법은 다음과 같습니다.
티 명령의 이름은 배관에 사용되는 T-스플리터(단일 수원의 물을 두 방향으로 리디렉션하는 파이프)의 이름을 따서 명명되었습니다.
tee 명령 구문
티 간단한 목적과 간단한 구문을 가진 명령입니다:
tee OPTIONS FILE
참고:
- 옵션 아래 표의 옵션 목록입니다.
- 파일 출력을 저장하려는 파일의 경로입니다.
- 입력은 파이프로 연결되거나 tee로 리디렉션되어야 합니다. 그렇지 않으면 작업할 항목이 없습니다.
- 표준 입력/출력을 리디렉션하여 수행됩니다. 예는 아래를 참조하세요.
- 티 제공된 데이터를 모두 FILE에 출력합니다. STDOUT뿐만 아니라 지정됨 (표준 출력)
- 기본적으로 콘솔에 출력되지만 다른 애플리케이션으로 리디렉션될 수도 있습니다.
옵션
다음은 티에 가장 일반적으로 사용되는 옵션입니다. 명령:
<일> | |
---|---|
-a, –append | 주어진 파일에 추가, 덮어쓰지 않음 |
-i, –무시 인터럽트 | 인터럽트 신호 무시 |
오류 진단 방법을 포함한 더 많은 옵션을 보려면 다음을 실행하여 사용 설명서를 볼 수 있습니다.
man tee
티 명령 예
다음은 티 방법에 대한 몇 가지 간단한 예입니다. 사용할 수 있습니다.
이 모든 예는 echo를 사용합니다. 단순히 제공된 텍스트를 출력하는 명령입니다.
명령의 출력을 보고 새 파일로 저장
에코의 출력 명령은 tee로 파이프되어 파일에 저장되고 콘솔에 출력됩니다.
echo "hello!" | tee hello.txt
파일이 hello.txt인 경우 존재하는 경우 덮어씁니다.
명령의 출력을 보고 기존 파일로 저장
이 예는 위와 동일하지만 기존 파일을 덮어쓰지 않고 끝에 추가합니다.
echo "hello again!" | tee -a hello.txt
여러 파일에 출력 저장 또는 추가
공백으로 구분하여 여러 파일을 지정할 수 있습니다.
echo "hello several files!" | tee hello1.txt hello2.txt hello3.txt
리디렉션/파이프 티 출력
티의 표준 출력 파이프 및 리디렉션될 수 있습니다. 아래 예에서는 echo의 출력을 hello.txt에 저장합니다. 그러면 출력이 grep으로 전달됩니다. 콘솔에 출력하는 대신 명령:
echo "hello!" | tee hello.txt | grep hello
예를 들어 grep 명령(텍스트 입력 검색에 사용)은 단순히 'hello'라는 단어에 대한 tee의 출력을 검색합니다.
인터럽트 무시
인터럽트를 무시하면(예:명령을 종료하기 위해 CTRL + C 누르기) tee에서 더 깔끔한 출력을 얻을 수 있습니다. :
echo "hello!" | tee -i hello.txt
티 사용 sudo 사용
sudo command는 root로 로그인하지 않고도 root 사용자로 명령을 실행할 수 있도록 하며 일반적으로 사용됩니다.
다음 스니펫에서 – sudo 하지 않습니다 sudo와 같이 명령 출력을 리디렉션할 수 있습니다. 명령 자체는 리디렉션 기호(> ):
sudo echo "hello!" > /root/hello.txt
.../root 때문에 권한 오류와 함께 실패합니다. 디렉토리에는 루트 권한이 필요하지만 sudo 명령은 이러한 권한을 echo에만 적용합니다. 명령 - 이후에 오는 리디렉션이 아닙니다.
이 문제를 해결하는 방법은 티를 사용하는 것입니다. 명령:
echo "hello!" | sudo tee /root/hello.txt
이것은 echo의 출력 때문에 작동합니다. 명령이 티에 전달됩니다. , 이는 이다 sudo를 통해 관리자 권한으로 실행 중 – 및 티 출력을 저장합니다.