tee(명령어)
tee (command)| 개발자 | AT&T Bell Laboratories, Mike Parker, Richard Stallman, David MacKenzie, Microware, JP Software, Microsoft |
|---|---|
| 초기 릴리즈 | 1974년 6월, 전( |
| 기입처 | C |
| 운영 체제 | Unix, Unix like, Plan 9, Inferno, OS-9, FreeDOS, Windows, ReactOS, IBM i |
| 플랫폼 | 크로스 플랫폼 |
| 유형 | 명령어 |
| 면허증. | FreeDOS: GPL-2.0 이후 ReactOS: GPLv2 계획 9: MIT 라이선스 |
컴퓨팅에서 는 표준 입력을 읽고 이를 [1]표준 출력과 1개 이상의 파일 양쪽에 쓰기하여 입력을 효과적으로 복제하는 표준 스트림을 사용하는 명령줄 인터프리터(쉘)의 명령어입니다.주로 파이프 및 필터와 함께 사용됩니다.이 명령어는 [2]배관에 사용되는 T-스플리터의 이름을 따서 명명되었습니다.
개요
그tee명령어는 일반적으로 프로그램의 출력을 분할하여 파일에 표시 및 저장할 수 있도록 하기 위해 사용됩니다.이 명령을 사용하여 다른 명령 또는 프로그램에 의해 데이터가 변경되기 전에 중간 출력을 캡처할 수 있습니다.tee 명령은 표준 입력을 읽은 다음 내용을 표준 출력에 씁니다.데이터를 지정된 파일 또는 변수에 동시에 복사합니다.구문은 명령어 구현에 따라 달라집니다.
실장
이 명령어는 Unix 및 Unix와 유사한 운영 체제인 Microware에서 사용할 수 있습니다.OS-9,[3] DOS(예: 4DOS, FreeDOS), Microsoft Windows(예: 4NT, Windows PowerShell), ReactOS.[4]Linuxtee 커맨드는 마이크 파커, 리처드 스톨먼, 데이비드 맥켄지에 [5]의해 작성되었다.이 명령어는 일반적인 GNU Unix 유사 [6]유틸리티의 nativeWin32ports UnxUtils 컬렉션의 일부로 Microsoft Windows용 별도의 패키지로 사용할 수 있습니다.FreeDOS 버전은 Jim Hall에 의해 개발되었으며 GPL에 [7]따라 라이센스가 부여됩니다.그tee 명령어는 IBM i 운영 [8]체제에도 이식되었습니다.
게다가sponge[9] 명령어는 유사한 기능을 제공합니다.
Unix 및 Unix 유사
tee [ - a ][ - i ][파일...]
인수:
File ...각각 출력을 수신하는 파일의 리스트.
플래그:
-a출력을 덮어쓰지 않고 각 파일에 추가합니다.-i인터럽트를 무시합니다.
이 명령어는 다음 종료 값(종료 상태)을 반환합니다.
- 0 표준 입력이 모든 출력 파일에 복사되었습니다.
- 0 에러가 발생했습니다.
프로세스 대체를 사용하면 두 개 이상의 프로세스가 원래 프로세스의 표준 출력을 읽을 수 있습니다.이 예는 GNU Coreutils, tee invocation에서 읽어보십시오.
주의: 정상적으로 열린 파일 오퍼랜드에 쓸 수 없는 경우, 정상적으로 열린 다른 파일 오퍼랜드 및 표준 출력에 쓰기는 계속되지만 종료 값은 0보다 커집니다.
4DOS 및 4NT
TEE [/A] 파일...
인수:
file"tee'd" 출력을 수신하는 하나 이상의 파일.
플래그:
/A파이프라인 콘텐츠를 덮어쓰지 않고 출력 파일에 추가합니다.
참고: 파이프와 함께 te를 사용할 경우 이전 명령어의 출력이 임시 파일에 기록됩니다.명령어가 완료되면 TEE는 임시 파일을 읽고 출력을 표시하여 명령줄 인수로 지정된 파일에 씁니다.
Windows PowerShell
tee [-FilePath] <String> [-InputObject <PSObject> tee - 가변 <String> [-InputObject <PSObject>]
인수:
-InputObject <PSObject>cmdlet에 대한 개체 입력을 지정합니다.매개 변수에는 개체를 반환하는 개체와 명령 또는 식을 포함하는 변수를 사용할 수 있습니다.-FilePath <String>cmdlet이 개체를 저장할 파일을 지정합니다.파라미터에는 단일 파일로 확인되는 와일드카드 문자를 사용할 수 있습니다.-Variable <String>입력 객체에 대한 참조가 지정된 변수에 할당됩니다.
주의: Tee는 다음 명령어로 구현됩니다.ReadOnly 명령어 에일리어스내부 cmdlet 이름은 다음과 같습니다.Microsoft.PowerShell.Utility\Tee-Object.
예
Unix 및 Unix 유사
- 명령어(lint)의 출력을 동시에 표시 및 저장하려면 다음 절차를 수행합니다.
lint program.c tee program.syslog이 명령어의 표준 출력이 표시됩니다.lint program.c그 복사본을 파일에 저장합니다.program.lint. 파일 이름이program.lint이미 존재합니다.삭제 및 치환됩니다.
마찬가지로 stdout 및 stderr 출력 스트림은 모두 표준 출력으로 리다이렉트할 수 있으며program.lint스트림 리다이렉션 사용:
lint program.c 2>&1 tee program.syslog- 명령어의 출력을 표시 및 기존 파일에 추가하려면 다음 절차를 수행합니다.
lint program.c tee -a program.disc이 출력에는, 의 표준 출력이 표시됩니다.lint program.c명령어를 컴퓨터에 설치하는 동시에 명령어의 복사본을program.lint파일. 만약program.lint파일이 존재하지 않고 생성됩니다.
- 권한 에스컬레이션을 허용하려면:
cat ~/.dev/id_dev.pub ssh admin@server "sudo tee - a /root/.dev/keys 2 > / authorized_keys2 > /dev/dev"이 예에서는 sudo 명령의 고유 제한을 바이패스하기 위해 tee를 사용하는 방법을 보여 줍니다.sudo는 표준 출력을 파일로 파이핑할 수 없습니다.stdout 스트림을 버림으로써/dev/null또한 콘솔의 미러 출력도 억제합니다.위의 명령어는 사용자의 공용 키를 서버의 키 권한 목록에 설치하여 ssh를 통해 서버에 대한 현재 사용자 루트 액세스 권한을 부여합니다.
Bash에서는 프로세스 치환을 사용하여 표시되는 출력에 영향을 주지 않고 파일에 쓰기 전에 출력을 필터링할 수 있습니다.예를들면,
ls --color=항상 티>(sed "s/\x1b[^m]*m//g"> ls.txt)에 쓰기 전에 일반적인 ANSI 이스케이프 코드를 삭제합니다.ls.txt는 [10]표시용으로 보관합니다.
4DOS 및 4NT
이 예에서는 파일을 검색합니다.wikipedia.txt문자열 "4DOS"를 포함하는 행에 대해 일치하는 행을 복사합니다.4DOS.txt행을 정렬하여 출력 파일에 씁니다.4DOSsorted.txt:
"4DOS" 위키피디아를 찾습니다.txt tee 4DOS.txt 정렬> 4DOS 정렬.txtWindows PowerShell
- 명령어의 출력을 동시에 표시 및 저장하려면 다음 절차를 수행합니다.
ipconfig(설정) 티출력 파일.txt 이 명령어의 표준 출력이 표시됩니다.ipconfig콘솔 창에서 그 복사본을 동시에 파일에 저장합니다.OutputFile.txt.
취득 프로세스 위치-객체 { $_.이름. -라이크 "c*" } 티오브젝트 ABC.txt 위치-객체 { $_.핸들 -gt 1000 } 이 예에서는 tee의 파이핑된 입력은 필터링할 수 있으며 tee는 출력을 표시하기 위해 사용됩니다.이 출력은 1000개 이상의 핸들을 가진 프로세스만 표시되도록 다시 필터링되고 필터링되지 않은 출력은 파일에 기록됩니다.ABC.txt.
- Windows Powershell은 이진 및 원시 데이터에는 적합하지 않으며 스트림을 항상 텍스트로 취급하며 전송 시 데이터를 수정합니다.
「 」를 참조해 주세요.
레퍼런스
- ^ "Man Page for tee (posix Section 1)". IEEE Std 1003.1, 2003 Edition, Standard for Information Technology -- Portable Operating System Interface (POSIX), The Open Group Base Specifications Issue 6. Retrieved 1 December 2013.
- ^ "In Unix, what do some obscurely named commands stand for?". Retrieved 3 February 2012.
- ^ Paul S. Dayan (1992). The OS-9 Guru - 1 : The Facts. Galactic Industrial Limited. ISBN 0-9519228-0-7.
- ^ "reactos/reactos". GitHub. 3 January 2022.
- ^ "tee(1): read from stdin/write to stdout/files - Linux man page". linux.die.net.
- ^ "Native Win32 ports of some GNU utilities". unxutils.sourceforge.net.
- ^ "ibiblio.org FreeDOS Package -- tee (Unix-like)". www.ibiblio.org.
- ^ IBM. "IBM System i Version 7.2 Programming Qshell" (PDF). Retrieved 5 September 2020.
- ^ "sponge(1): soak up stdin/write to file - Linux man page". linux.die.net.
- ^ "GNU Coreutils: tee invocation". Retrieved 3 February 2016.
추가 정보
- McElhearn, Kirk (2006). The Mac OS X Command Line: Unix Under the Hood. John Wiley & Sons. ISBN 978-0470113851.