2017-12-11 8 views
1

코드의 특정 부분이 왜 작동하지 않는지 이해하려고합니다.(-m) 매개 변수가있는 tar 뒤에있는 수수께끼는 무엇입니까?

타르 xzf - -m '

문제를 만드는 것입니다. 다양한 조합을 시도했지만 understading하지 않고 (tar xzf 제외) 어떻게 할 수 있습니까? '- -m'첫 번째 - 만약 내가도 모르는 오류의 일종이 ... 은 (명령 자체가 큰 스크립트의 일부입니다, 스크립트 자체는 파이프 라인의 일부입니다.)

tar: Refusing to read archive contents from terminal (missing -f option?) 
tar: Error is not recoverable: exiting now 

그것이 내가 얻는 오류입니다.

+0

아마도 타르 설명서를 읽어야합니다. 'man tar' – Nihvel

+0

오류 메시지는 명확하고, 매뉴얼을 읽고'-' 옵션은 무엇을하는지 알 수 있습니다. –

답변

2

f은 인수를 취하며이 인수는 아카이브의 파일 이름입니다. 파일 이름 대신 -을 사용하면 tar은 파일이 아닌 표준 입력에서 데이터를 읽어야 함을 의미합니다. 그러나이 경우 표준 입력이 터미널이기 때문에 타르는 작업을 거부합니다.

파일로 표준 입력을 재 지정하려면 사용하십시오 :

tar xzf - < archive.tar 

'-m'옵션은 그냥 아카이브에서 추출 파일의 "파일의 수정 시간을"추출하지 타르 지시 .