저는 수업에 대한 실습 과제를 수행하고 있는데 그 예 users | wc -w
는 현재 로그인한 사용자 수를 표시하는 것입니다. 강사는 개수를 계속 표시하면서 출력을 users
파일( )에 쓰도록 요청했습니다. users > file
내 초기 생각은 원래 예제를 간단한 읽기로 변경하는 것이었지만 users > file | wc -w
오류가 발생했습니다.
ambiguous output redirect
우리 대학의 Unix 연구실에서는 기본적으로 작업을 수행할 수 tcsh
있으며 명령이 셸마다 다를 수 있다는 것을 알고 있습니다. 완전히 잊어버린 작업을 수행할 수 있는 명령이 있습니까?
답변1
사용 tee
:
users | tee file | wc -w
사용자 수를 출력으로 제공하고 사용자를 콘텐츠로 파일에 씁니다.
귀하의 질문에 해당하는 경우:
command >file | command2
이것은 작동하지 않습니다. >file
출력을 command
file 로 리디렉션하고 file
, 출력은 익명 파이프에 기록되고 명령은 command2
다른 쪽 끝에서 이를 읽습니다. 이는 모호한 리디렉션입니다.
이 명령은 표준 입력에서 받은 모든 내용이 기록되는 인수를 tee
허용합니다 . 또한 표준 입력부터 표준 출력까지 모든 것을 기록하며, 여기에서 더 많은 명령이나 파일로 리디렉션할 수 있습니다.file
tee
tee
답변2
이를 수행하는 명령이 있습니다 tee
.
users | tee file | wc -w
추신. (외부) 명령은 셸 간에 다르지 않습니다. 입력 및 출력 리디렉션 구문은 다릅니다.