여러 파일을 .xz 아카이브로 압축하려면 어떻게 해야 합니까?

여러 파일을 .xz 아카이브로 압축하려면 어떻게 해야 합니까?

여러 이미지를 .xz 아카이브로 압축하고 싶습니다. 어떻게 해야 하나요?

답변1

tar옵션 과 함께 사용 -J:

tar -cvJf images.tar.xz /directory/containing/images/*

tar여러 파일을 하나로 결합하는 데 사용되며(아카이브) XZ 압축 알고리즘을 사용하여 아카이브를 압축해야 합니다.

에서man tar:

-c, --create
       create a new archive
-v, --verbose
       verbosely list files processed
-J, --xz

-f, --file ARCHIVE
       use archive file or device ARCHIVE

또한 images.tar.xz현재 디렉터리에 생성되므로 다른 곳에 저장하려면 를 사용하세요 /full/path/to/images.tar.xz.

답변2

비록​tar cJf archive files...Zacharee1이 자세히 설명함그리고작성자: 희메일일반적으로 수행하려는 작업이지만, 또 다른 방법은 타르 처리된 데이터를xz명령:

tar c files... | xz > archive.tar.xz

우분투 이후로tar옵션 을 지원하므로 J이 대체 방법은 에 옵션을 전달하려는 경우 특히 유용합니다 xz.

이 예에서는 높은 수준의 압축( -9to xz)과 자세한 출력( vto tar, -vto xz)을 사용하여 일부 TIFF 파일을 tar 및 xzip으로 압축합니다.

ek@Io:~/Pictures$ tar vc *.tif{,f} | xz -9v > pics.tar.xz
page001.tif
page002.tif
page003.tif
page004.tif
page9087.tif
page3la.tiff
quux0000.tiff
  100 %       207.3 KiB / 290.0 KiB = 0.715

물론 이는 명시적으로 별도의 두 단계로 수행될 수도 있습니다.

ek@Io:~/Pictures$ tar vcf pics.tar *.tif{,f}
page001.tif
page002.tif
page003.tif
page004.tif
page9087.tif
page3la.tiff
quux0000.tiff
ek@Io:~/Pictures$ xz -9v pics.tar
pics.tar (1/1)
  100 %       207.3 KiB / 290.0 KiB = 0.715

이 두 가지 방법은 실제로 작동 방식이 동일하지 않지만 .tar.xz결국 생성되는 파일은 동일해야 합니다(테스트할 때는 동일했습니다).

  • 처음에는산출tar~ 이다파이프로 연결된( |) 로입력xz. 거의 즉시 xz데이터를 수신하며 tar중간의 압축되지 않은 tar 파일은 생성되지 않습니다. 즉, 첫 번째 방법은 본질적으로 동일합니다.에게tar cJf archive files...에 전달된 추가 인수는 제외됩니다 xz.
  • 두 번째에서는 첫 번째 명령으로 압축되지 않은 tar 아카이브가 생성된 다음 xz두 번째 명령으로 압축됩니다. ( / xz로 호출하지 않는 한 완료되면 원본 파일을 자동으로 삭제합니다 .)-k--keep

자세한 내용은 다음을 참조하세요.Rafael van Horn의 이 게시물및 맨 tar페이지 xz.

답변3

다음 명령을 사용하십시오: tar cJf <archive.tar.xz> <files>. 파일 경로를 공백으로 구분하세요.

관련 정보