다음 두 구문 사이에 차이점이 있는지 알고 싶습니다.아스팔트이 명령은 STDOUT 채널에 출력을 씁니다.
tar -czf - /src_dir
tar -czf -O /src_dir
~에서남성페이지, 나 이거 읽었어. 그러나 "-"에는 내용이 없습니다.
-O, --to-stdout : extract files to standard output
이식성 문제 없이 상호 교환이 가능한가요?
답변1
-f
두 번째 명령에서 이를 제거한 후 두 명령은 동일해야 합니다(GNU 사용 tar
). GNU 매뉴얼은 -
쓰기 사용을 문서화하지 않았지만-f
tar
그 info
설명서는 말한다:
아카이브 이름으로 "-"를 사용하는 경우 "tar"는 표준 입력에서 아카이브를 읽습니다(파일을 나열하거나 추출할 때).표준 출력에 기록합니다(아카이브 생성 시).. 아카이브를 수정할 때 ARCHIVE-NAME으로 "-"를 사용하면 "tar"는 표준 입력에서 원본 아카이브를 읽고 전체 새 아카이브를 표준 출력에 씁니다.
두 번째 명령 에서는 -f
이름이 지정된 파일에 기록 -O
하고 표준 출력에 데이터를 생성하지 않습니다.