* .txz로 압축 된 파일이 있습니다. 포장을 풀고 * .tar 파일을 받았습니다. 하나의 명령으로 두 번 포장을 풀 수있는 방법이 있습니까? 하나의 명령으로 파일 (* .tar) .txz의 압축을 풉니 다.
나는 이것을 다음과 같이 알고있다.
xz -d file.txz
tar xvf file.tar
그러나 더 좋은 방법이 있는지 궁금합니다.
* .txz로 압축 된 파일이 있습니다. 포장을 풀고 * .tar 파일을 받았습니다. 하나의 명령으로 두 번 포장을 풀 수있는 방법이 있습니까? 하나의 명령으로 파일 (* .tar) .txz의 압축을 풉니 다.
나는 이것을 다음과 같이 알고있다.
xz -d file.txz
tar xvf file.tar
그러나 더 좋은 방법이 있는지 궁금합니다.
답변:
xz -d < file.tar.xz | tar xvf -
압축 된 아카이브와 동일합니다. 원본 파일의 압축되지 않은 복사본을 만들 필요는 없습니다 .
tar
최신 버전의 GNU와 같은 일부 구현 tar
에는 xz
자체 호출 옵션이 내장 되어 있습니다.
GNU와 tar
나 bsdtar
:
tar Jxvf file.tar.xz
그러나 버전 -J
이있는 경우 xz
파일을 자동으로 감지 할 가능성이 있습니다 .
tar xvf file.tar.xz
충분합니다.
GNU 또는 BSD tar
가 너무 오래되어 xz
구체적 으로 지원할 수없는 경우 다음 --use-compress-program
옵션 을 사용할 수 있습니다 .
tar --use-compress-program=xz -xvf file.tar.gz
tar
압축기 유틸리티 를 호출 하면 얻을 수있는 장점 중 하나는 종료 상태에서 실패를보고 할 수 있다는 것입니다.
참고 : 경우 tar.xz
아카이브로 생성 된 pixz
, pixz
추가 한 tar
압축을 전체 아카이브를하지 않고 개별적으로 파일을 추출 할 수 있습니다 그것에 지수 :
pixz -x path/to/file/in/archive < file.tar.xz | tar xvf -
포장 풀기는 아마도 올바른 용어가 아닙니다. 당신은 할 수 있습니다 압축 해제 와 함께 xz
하고 압축을 풉니 다 와 tar
.
GNU 매뉴얼 페이지 tar
( man tar
, GNU tar는 데비안에서 기본값 임)는 다음을 사용할 수 있도록 지정합니다.
-I, --use-compress-program PROG
filter through PROG (must accept -d)
및 xz
지지대 -d
사용할 수 있도록 옵션 :
tar --use-compress-program xz xvf file.txz
무엇 훨씬 덜 명확한 매뉴얼 페이지에서 것은 것입니다 -xz
및 -J
대한 shorthands 있습니다 --use-compress-program xz
또는 -I xz
.
그리고 맨 페이지에서 전혀 지정되지 않은 것은 당신이 할 수 있다는 것입니다.
tar xvf file.txz
GNU tar에서 tar 파일을 압축 한 것으로 인식합니다 xz
.