/etc/services
파일에서 발견된 모든 TCP 서비스의 정렬된 목록을 만들고 명령의 출력을 grep tcp /etc/services
명령으로 파이프한 sort
다음 이 파이프의 출력을 파일로 리디렉션하고 싶습니다 ~/pipelab.txt
.
내 출력이 잘못되었다는 오류 메시지가 계속 표시되는데 그 이유를 모르겠습니다.
이것이 제가 마지막으로 시도한 것입니다:
grep tcp /etc/services > ~/pipelab.txt | sort
답변1
grep
출력을 파일로 리디렉션하려고 합니다.그리고로 파이프하십시오 sort
. 그렇게 할 수는 없습니다. 적어도 그렇게는 안 됩니다.
대신, 정렬을 위해 피드를 제공하고 싶을 뿐입니다.
grep tcp /etc/services | sort
그런 다음정렬됨출력(즉, 정렬되지 않은 내용)을 파일로 출력하므로 정렬 후에 리디렉션을 넣습니다.
grep tcp /etc/services | sort > ~/pipelab.txt
파이프와 리디렉션 모두 명령 출력의 위치를 변경하여 작동합니다. 두 사람이 출력을 놓고 싸우고 있었습니다 grep
(결국 리디렉션이 승리하여 정렬되지 않은 출력을 파일에 썼습니다).
답변2
> ~/pipelab.txt
분명히 파이프라인 연산자와 같은 쪽 명령에 속합니다 |
. 즉 grep
, 출력을 파이핑하는 대신 파일로 리디렉션합니다 sort
.
grep tcp /etc/services | sort > ~/pipelab.txt