영어프랑스어스페인어

Ad


온웍스 파비콘

xzcat - 클라우드의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 xzcat 실행

이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 xzcat 명령입니다.

프로그램:

이름


xz, unxz, xzcat, lzma, unlzma, lzcat - .xz 및 .lzma 파일 압축 또는 압축 해제

개요


xz [선택권]... [파일] ...

unxz 에 해당하는 xz --압축해제.
xzcat 에 해당하는 xz --압축해제 --stdout.
이즈 마 에 해당하는 xz --형식=lzma.
운즈마 에 해당하는 xz --형식=lzma --압축해제.
이즈캣 에 해당하는 xz --형식=lzma --압축해제 --stdout.

파일 압축을 풀어야 하는 스크립트를 작성할 때 항상 다음을 사용하는 것이 좋습니다.
name xz 적절한 인수(xz -d or xz -dc) 이름 대신 unxzxzcat.

기술


xz 다음과 유사한 명령줄 구문을 사용하는 범용 데이터 압축 도구입니다. gzip을(1)
bzip2(1). 기본 파일 형식은 .xz 형식이지만 레거시 .lzma 사용된 형식
컨테이너 형식 헤더가 없는 LZMA Utils 및 원시 압축 스트림도
지원.

xz 각각 압축 또는 압축 해제 파일 선택한 작동 모드에 따라 아니오라면
파일 제공되거나 파일 is -, xz 표준 입력에서 읽고 처리된 데이터를 씁니다.
표준 출력으로. xz 거부합니다(오류를 표시하고 건너뜁니다. 파일) 쓰기
터미널인 경우 압축된 데이터를 표준 출력으로 변환합니다. 비슷하게, xz 읽기를 거부할 것이다
터미널인 경우 표준 입력에서 압축된 데이터.

않는 한 --stdout 지정되고, 파일 이외의 - 이름이 인 새 파일에 기록됩니다.
소스에서 파생 파일 이름 :

· 압축 시 대상 파일 형식의 접미사(.xz or .lzma)에 추가됩니다.
소스 파일 이름을 사용하여 대상 파일 이름을 가져옵니다.

· 압축을 풀 때 .xz or .lzma 파일 이름에서 접미사를 제거하여
대상 파일 이름. xz 접미사도 인식합니다. .txt.tz, 다음으로 대체합니다.
전에, .타르 접미사.

대상 파일이 이미 존재하는 경우 오류가 표시되고 파일 건너 뜁니다.

표준 출력에 쓰지 않는 한, xz 경고를 표시하고 건너뜁니다 파일 만약
다음이 적용됩니다.

· 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 일반 파일이 아닙니다. 심볼릭 링크는 따르지 않으므로
일반 파일로 간주됩니다.

· 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 하나 이상의 하드 링크가 있습니다.

· 입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 setuid, setgid 또는 고정 비트 세트가 있습니다.

· 작동 모드는 압축으로 설정되고 파일 이미 대상의 접미사가 있습니다
파일 형식 (.xz or .txt 로 압축할 때 .xz 형식 및 .lzma or .tz 언제
에 압축 .lzma 형식).

· 작동 모드는 압축 해제로 설정되고 파일 의 접미사가 없습니다.
지원되는 파일 형식(.xz, .txt, .lzma.tz).

성공적으로 압축 또는 압축 해제한 후 파일, xz 소유자, 그룹,
소스의 권한, 액세스 시간 및 수정 시간 파일 대상 파일에.
그룹 복사에 실패하면 대상 파일이 복사되지 않도록 권한이 수정됩니다.
소스에 액세스할 수 있는 권한이 없는 사용자가 액세스할 수 있게 됩니다. 파일. xz
액세스 제어 목록 또는 확장 속성과 같은 다른 메타데이터 복사를 지원하지 않습니다.
아직.

대상 파일이 성공적으로 닫히면 소스 파일 하지 않는 한 제거됩니다.
--유지하다 지정되었습니다. 출처 파일 출력이 다음에 기록되면 제거되지 않습니다.
표준 출력.

보내기 시진포 or 시구스르1 ~로 xz 프로세스는 진행 정보를 인쇄하도록 합니다.
표준 에러. 이것은 표준 오류가 터미널일 때 사용이 제한적일 뿐입니다.
--말 수가 많은 자동으로 업데이트되는 진행률 표시기를 표시합니다.

메모리 용법
의 메모리 사용량 xz 수백 킬로바이트에서 몇 기가바이트까지 다양합니다.
압축 설정에서. 파일을 압축할 때 사용되는 설정에 따라
압축 해제기의 메모리 요구 사항. 일반적으로 압축 해제기는 5%에서 20%의
파일을 생성할 때 압축기에 필요한 메모리 양입니다. 예를 들어,
로 만든 파일 압축 풀기 xz -9 현재 65MiB의 메모리가 필요합니다. 그래도 그렇구나
가질 수 있는 .xz 압축을 푸는 데 몇 기가바이트의 메모리가 필요한 파일.

특히 구형 시스템의 사용자는 매우 큰 메모리 사용 가능성을 발견할 수 있습니다.
짜증 나는. 불편한 놀라움을 방지하기 위해, xz 내장 메모리 사용 제한기가 있으며,
기본적으로 비활성화되어 있습니다. 일부 운영 체제는 제한하는 방법을 제공하지만
이에 의존하는 프로세스의 메모리 사용량은 충분히 유연하지 않은 것으로 간주됩니다(예:
한계(1) 가상 메모리를 제한하는 것은 불구가 되는 경향이 있습니다. mmap(삼)).

메모리 사용량 제한기는 명령줄 옵션으로 활성화할 수 있습니다. --기억제한=제한.
종종 환경을 설정하여 기본적으로 리미터를 활성화하는 것이 더 편리합니다.
변수 XZ_DEFAULT, 예. XZ_DEFAULTS=--memlimit=150MiB. 설정이 가능합니다
를 사용하여 압축 및 압축 해제에 대해 별도로 제한 --memlimit-압축=제한
--memlimit 압축 해제=제한. 외부에서 이 두 가지 옵션을 사용하여 XZ_DEFAULT 거의 유용하지 않다
한 번의 실행으로 인해 xz 압축과 압축 해제를 모두 할 수 없으며
--기억제한=제한 (또는 -M 제한) 명령줄에 입력하는 것이 더 짧습니다.

압축 해제 시 지정된 메모리 사용 제한을 초과하면, xz 표시됩니다
오류가 발생하고 파일 압축 해제가 실패합니다. 압축할 때 제한을 초과하면 xz
제한이 더 이상 초과되지 않도록 설정을 축소하려고 시도합니다(다음 경우 제외
사용 --형식=원시 or --조정 없음). 이렇게 하면 제한이 없는 한 작업이 실패하지 않습니다.
매우 작은. 설정의 크기 조정은 압축과 일치하지 않는 단계에서 수행됩니다.
레벨 사전 설정, 예를 들어 제한이 필요한 양보다 약간 작은 경우 xz -9,
설정이 완전히 축소되지 않고 약간만 축소됩니다. xz -8.

연쇄 메워 넣기 .xz 파일
연결이 가능합니다 .xz 파일을 있는 그대로. xz 그런 파일의 압축을 풀 것입니다.
싱글이었다 .xz 파일.

연결된 부분 사이 또는 마지막 부분 뒤에 패딩을 삽입할 수 있습니다.
패딩은 null 바이트로 구성되어야 하고 패딩 크기는 다음의 배수여야 합니다.
XNUMX바이트. 예를 들어 다음과 같은 경우 유용할 수 있습니다. .xz 측정하는 매체에 파일이 저장됩니다.
512바이트 블록의 파일 크기.

연결 및 패딩은 허용되지 않습니다. .lzma 파일 또는 원시 스트림.

옵션


정수 접미사 특별한
정수 인수가 필요한 대부분의 위치에서 선택적 접미사가 지원됩니다.
큰 정수를 쉽게 나타냅니다. 정수와 정수 사이에 공백이 없어야 합니다.
접미사.

키비 정수에 1,024(2^10)를 곱합니다. Ki, k, kB, KKB 로 받아들여진다
동의어 키비.

정수에 1,048,576(2^20)를 곱합니다. Mi, m, MMB 로 받아들여진다
동의어 .

GiB 정수에 1,073,741,824(2^30)를 곱합니다. Gi, g, GGB 로 받아들여진다
동의어 GiB.

특별한 가치 최대 에서 지원하는 최대 정수 값을 나타내는 데 사용할 수 있습니다.
옵션을 선택합니다.

조작 모드
여러 작업 모드 옵션이 제공되면 마지막 옵션이 적용됩니다.

-z, --압박 붕대
압박 붕대. 작동 모드 옵션이 없을 때의 기본 작동 모드입니다.
지정되고 명령 이름에서 다른 작동 모드가 암시되지 않습니다(
예, unxz 의미하다 --압축해제).

-d, --압축해제, --압축 해제
압축을 풉니다.

-t, --시험
압축 무결성 테스트 파일. 이 옵션은 다음과 같습니다. --압축해제
--stdout 압축 해제된 데이터가 다음에 기록되는 대신 폐기된다는 점을 제외하고
표준 출력. 파일이 생성되거나 제거되지 않습니다.

-l, --목록
압축에 대한 정보 인쇄 파일. 압축되지 않은 출력은 생성되지 않으며,
파일이 생성되거나 제거되지 않습니다. 목록 모드에서 프로그램은 읽을 수 없습니다
표준 입력 또는 기타 검색할 수 없는 소스에서 압축된 데이터.

기본 목록은 에 대한 기본 정보를 보여줍니다. 파일, 한 줄에 하나의 파일. 얻기 위해
더 자세한 정보, 또한 사용 --말 수가 많은 옵션. 더 많은 것을 위해
정보, 사용 --말 수가 많은 두 번, 하지만 속도가 느려질 수 있습니다.
모든 추가 정보에는 많은 검색이 필요합니다. 자세한 출력의 너비가 초과됨
80자이므로 출력을 다음과 같이 파이핑합니다. 적게 -S 경우에 편리할 수 있습니다.
터미널이 충분히 넓지 않습니다.

정확한 출력은 xz 버전 및 다른 로케일. 기계용-
읽을 수 있는 출력, --로봇 --목록 사용되어야한다.

조작 수정
-k, --유지하다
입력 파일을 삭제하지 마십시오.

-f, --힘
이 옵션에는 여러 가지 효과가 있습니다.

· 대상 파일이 이미 존재하는 경우 압축하기 전에 삭제하거나
압축을 푼다.

· 입력이 일반 파일에 대한 심볼릭 링크인 경우에도 압축 또는 압축 해제,
둘 이상의 하드 링크가 있거나 setuid, setgid 또는 고정 비트가 설정되어 있습니다. NS
setuid, setgid 및 고정 비트는 대상 파일에 복사되지 않습니다.

· 함께 사용할 때 --압축해제 --stdoutxz 유형을 인식할 수 없습니다.
소스 파일에서 소스 파일을 있는 그대로 표준 출력에 복사합니다. 이것은 허용 xzcat
--힘 같이 사용 방법(1) 압축되지 않은 파일의 경우 xz.
참고로 앞으로 xz 새로운 압축 파일 형식을 지원할 수 있습니다.
확인 xz 표준에 있는 그대로 복사하는 대신 더 많은 유형의 파일 압축 풀기
출력. --형식=체재 제한하는 데 사용할 수 있습니다. xz 하나의 압축을 풀기 위해
파일 형식.

-c, --stdout, --표준 출력으로
압축 또는 압축 해제된 데이터를 파일 대신 표준 출력에 씁니다.
이것은 의미 --유지하다.

--단일 스트림
첫 번째 항목만 압축 해제 .xz 스트림하고 가능한 나머지 입력을 조용히 무시합니다.
스트림을 따르는 데이터. 일반적으로 이러한 후행 쓰레기는 xz 디스플레이
오류.

xz 두 개 이상의 스트림을 압축 해제하지 않습니다. .lzma 파일 또는 원시 스트림, 그러나
이 옵션은 여전히 xz 뒤에 오는 가능한 데이터를 무시하십시오. .lzma 파일
또는 원시 스트림.

작동 모드가 아닌 경우 이 옵션은 적용되지 않습니다. --압축해제 or --시험.

--희소 없음
희소 파일 생성을 비활성화합니다. 기본적으로 일반 파일로 압축을 풀면
파일 xz 압축 해제된 데이터에 long이 포함된 경우 파일을 희소하게 만들려고 시도합니다.
이진 XNUMX의 시퀀스. 표준 출력에 쓸 때도 작동합니다.
표준 출력이 일반 파일 및 특정 추가 조건에 연결되기 때문에
안전하게 만들기 위해 만난다. 희소 파일을 만들면 디스크 공간이 절약되고 속도가 빨라질 수 있습니다.
디스크 I/O 양을 줄여 압축 해제.

-S .서프, --접미사=.서프
압축할 때 사용 .서프 대신 대상 파일의 접미사로 .xz or
.lzma. 표준 출력에 쓰지 않고 소스 파일에 이미
접미사 .서프, 경고가 표시되고 파일을 건너뜁니다.

압축 해제 시 접미사가 있는 파일 인식 .서프 파일 외에도
전에, .xz, .txt, .lzma.tz 접미사. 소스 파일에 접미사가 있는 경우 .서프Walk Through California 프로그램,
대상 파일 이름을 가져오기 위해 접미사가 제거됩니다.

원시 스트림을 압축하거나 압축 해제할 때(--형식=원시), 접미사는 반드시
기본값이 없기 때문에 표준 출력에 쓰지 않는 한 항상 지정됩니다.
원시 스트림의 접미사.

--파일[=파일]
처리할 파일 이름 읽기 파일; 만약 파일 생략하면 파일 이름을 읽습니다.
표준 입력에서. 파일 이름은 줄 바꿈 문자로 끝나야 합니다. NS
대시(-)는 일반 파일 이름으로 사용됩니다. 표준 입력을 의미하지 않습니다. 만약에
파일 이름은 명령줄 인수로도 주어집니다.
에서 읽은 파일 이름 파일.

--files0[=파일]
이것은 동일하다 --파일[=파일] 각 파일 이름을 종료해야 한다는 점을 제외하고
null 문자로.

Basic 파일 체재 압축 옵션
-F 체재, --형식=체재
파일 지정 체재 압축 또는 압축 해제:

자동 이것이 기본값입니다. 압축할 때, 자동 에 해당하는 xz. 언제
압축을 풀면 입력 파일의 형식이 자동으로 감지됩니다. 메모
원시 스트림( --형식=원시) 자동 감지할 수 없습니다.

xz 로 압축 .xz 파일 형식 또는 수락만 .xz 때 파일
압축을 푼다.

이즈 마, 혼자
레거시로 압축 .lzma 파일 형식 또는 수락만 .lzma 때 파일
압축을 푼다. 대체 이름 혼자 뒤로 제공됩니다
LZMA 유틸리티와의 호환성.

살갗이 벗어 진 원시 스트림을 압축하거나 압축 해제합니다(헤더 없음). 이것은 다음을 의미합니다
고급 사용자 전용. 원시 스트림을 디코딩하려면 다음을 사용해야 합니다. --형식=원시
일반적으로 저장되었을 필터 체인을 명시적으로 지정합니다.
컨테이너 헤더에서.

-C 검사, --체크=검사
무결성 검사 유형을 지정합니다. 수표는 다음에서 계산됩니다.
압축되지 않은 데이터로 저장 .xz 파일. 이 옵션은 다음 경우에만 적용됩니다.
로 압축 .xz 체재; NS .lzma 형식은 무결성 검사를 지원하지 않습니다.
무결성 검사(있는 경우)는 다음과 같은 경우에 확인됩니다. .xz 파일이 압축 해제됩니다.

지원 검사 유형 :

없음 무결성 검사를 전혀 계산하지 마십시오. 이것은 일반적으로 나쁜 생각입니다.
이것은 데이터의 무결성이 다른 수단으로 검증될 때 유용할 수 있습니다.
어쨌든.

crc32 IEEE-32(이더넷)의 다항식을 사용하여 CRC802.3를 계산합니다.

crc64 ECMA-64의 다항식을 사용하여 CRC182를 계산합니다. 이것은 기본값이며,
손상된 파일을 감지하고 CRC32보다 약간 우수하기 때문에
속도 차이는 무시할 수 있습니다.

sha256 SHA-256을 계산합니다. 이것은 CRC32 및 CRC64보다 다소 느립니다.

무결성 .xz 헤더는 항상 CRC32로 확인됩니다. 할 수 없다
변경하거나 비활성화하십시오.

-0 ... -9
압축 사전 설정 수준을 선택합니다. 기본값은 -6. 여러 사전 설정 레벨인 경우
지정하면 마지막 항목이 적용됩니다. 사용자 정의 필터 체인이 이미 있는 경우
지정된 경우 압축 사전 설정 수준을 설정하면 사용자 정의 필터 체인이 지워집니다.

사전 설정 간의 차이는 gzip을(1)과하면
bzip2(1). 선택한 압축 설정은 다음의 메모리 요구 사항을 결정합니다.
따라서 너무 높은 사전 설정 레벨을 사용하면
RAM이 거의 없는 오래된 시스템에서 파일의 압축을 풉니다. 구체적으로 특별히, 그건 지원 a
좋은 생각 맹목적으로 사용 -9 for 모두 자주 하는 것처럼 gzip을(1)과하면
bzip2(1).

-0 ... -3
이들은 다소 빠른 사전 설정입니다. -0 때로 더 빠릅니다. gzip을 -9 동안
훨씬 더 잘 압축됩니다. 더 높은 것들은 종종 다음과 비슷한 속도를 가집니다.
bzip2(1) 결과가 비슷하거나 더 나은 압축비로
압축되는 데이터 유형에 따라 크게 달라집니다.

-4 ... -6
압축 해제기 메모리 사용량을 유지하면서 매우 좋은 압축
오래된 시스템에도 합리적입니다. -6 일반적으로 좋은 기본값입니다
예를 들어, 압축 해제가 필요한 파일을 배포하는 경우에도 선택
16MiB RAM만 있는 시스템. (-5e or -6e 고려해 볼 가치가 있습니다.
만나다 --극심한.)

-7 ... -9
이것들은 마치 -6 그러나 더 높은 압축기 및 압축 해제기 메모리
요구 사항. 다음보다 큰 파일을 압축할 때만 유용합니다.
각각 8MiB, 16MiB 및 32MiB입니다.

동일한 하드웨어에서 압축 해제 속도는 대략 일정한 수입니다.
초당 압축된 데이터의 바이트입니다. 즉, 압축이 잘 될수록
일반적으로 감압이 더 빠릅니다. 이것은 또한 다음의 양을 의미합니다.
초당 생성되는 압축되지 않은 출력은 많이 다를 수 있습니다.

다음 표에는 사전 설정의 기능이 요약되어 있습니다.

사전 설정 DictSize CompCPU CompMem DecMem
-0 256KiB 0 3MiB 1MiB
-1 1MiB 1 9MiB 2MiB
-2 2MiB 2 17MiB 3MiB
-3 4MiB 3 32MiB 5MiB
-4 4MiB 4 48MiB 5MiB
-5 8MiB 5 94MiB 9MiB
-6 8MiB 6 94MiB 9MiB
-7 16MiB 6 186MiB 17MiB
-8 32MiB 6 370MiB 33MiB
-9 64MiB 6 674MiB 65MiB

열 설명:

· DictSize는 LZMA2 사전 크기입니다. 사용하는 것은 메모리 낭비입니다
압축되지 않은 파일의 크기보다 큰 사전. 그렇기 때문에
사전 설정을 사용하지 않는 것이 좋습니다. -7 ... -9 그것들이 정말로 필요하지 않을 때.
At -6 더 낮을수록 낭비되는 메모리 양이 일반적으로 충분하지 않습니다.
문제.

· CompCPU는 영향을 미치는 LZMA2 설정의 단순화된 표현입니다.
압축 속도. 사전 크기는 속도에도 영향을 미치므로 CompCPU는
수준에 대해 동일 -6 ... -9, 높은 수준은 여전히 ​​약간 느린 경향이 있습니다.
더 느려지고 더 나은 압축을 얻으려면 다음을 참조하십시오. --극심한.

· CompMem에는 단일 스레드 모드의 압축기 메모리 요구 사항이 포함되어 있습니다.
사이에 약간 다를 수 있습니다 xz 버전. 일부 메모리 요구 사항
미래의 다중 스레드 모드는 단일 스레드 모드보다 훨씬 더 높을 수 있습니다.
스레드 모드.

· DecMem에는 압축 해제기 메모리 요구 사항이 포함되어 있습니다. 즉, 압축
설정은 압축 해제기의 메모리 요구 사항을 결정합니다. 정확한
압축 해제기 메모리 사용량은 LZMA2 사전 크기보다 약간 크지만
테이블의 값은 다음 전체 MiB로 반올림되었습니다.

-e, --극심한
선택한 압축 사전 설정 수준의 느린 변형 사용(-0 ... -9)에
압축률이 조금 더 높으면 좋겠지만 운이 나쁘면
악화시키기도 합니다. 압축 해제기 메모리 사용량은 영향을 받지 않지만 압축기
메모리 사용량은 사전 설정 수준에서 약간 증가합니다. -0 ... -3.

사전 크기가 4MiB 및 8MiB인 두 개의 사전 설정이 있으므로 사전 설정 -3e
-5e 보다 약간 더 빠른 설정(낮은 CompCPU)을 사용합니다. -4e-6e,
각기. 그렇게 하면 두 개의 사전 설정이 동일하지 않습니다.

사전 설정 DictSize CompCPU CompMem DecMem
-0e 256KiB 8 4MiB 1MiB
-1e 1MiB 8 13MiB 2MiB
-2e 2MiB 8 25MiB 3MiB
-3e 4MiB 7 48MiB 5MiB
-4e 4MiB 8 48MiB 5MiB
-5e 8MiB 7 94MiB 9MiB
-6e 8MiB 8 94MiB 9MiB
-7e 16MiB 8 186MiB 17MiB
-8e 32MiB 8 370MiB 33MiB
-9e 64MiB 8 674MiB 65MiB

예를 들어, 8 MiB 사전을 사용하는 총 XNUMX개의 사전 설정이 있습니다.
가장 빠른 것에서 가장 느린 것의 순서는 -5, -6, -5e-6e.

--빠른
--베스트 이것은 다소 오해의 소지가 있는 별칭입니다. -0-9, 각각. 이것들은
LZMA Utils와의 하위 호환성을 위해서만 제공됩니다. 이러한 사용을 피하십시오
옵션을 제공합니다.

--블록 크기=크기
로 압축할 때 .xz 형식, 입력 데이터를 블록으로 분할 크기 바이트.
블록은 서로 독립적으로 압축됩니다.

--memlimit-압축=제한
압축을 위한 메모리 사용 제한을 설정합니다. 이 옵션이 여러 개 지정되면
시간이 지나면 마지막 항목이 적용됩니다.

압축 설정이 제한, xz 아래로 설정을 조정합니다
한도가 더 이상 초과되지 않도록 하고 자동
조정이 이루어졌습니다. 로 압축할 때는 이러한 조정이 이루어지지 않습니다.
--형식=원시 또는 if --조정 없음 지정되었습니다. 이러한 경우 오류는
표시 xz 종료 상태 1로 종료됩니다.

XNUMXD덴탈의 제한 여러 가지 방법으로 지정할 수 있습니다.

· 제한 바이트 단위의 절대값이 될 수 있습니다. 다음과 같은 정수 접미사 사용
유용할 수 있습니다. 예시: --memlimit-압축=80MiB

· 제한 총 물리적 메모리(RAM)의 백분율로 지정할 수 있습니다. 이것
설정할 때 특히 유용할 수 있습니다. XZ_DEFAULT 환경 변수
서로 다른 컴퓨터 간에 공유되는 셸 초기화 스크립트입니다. 저것
메모리가 더 많은 시스템에서는 제한이 자동으로 더 커집니다. 예시:
--memlimit-압축=70%

· 제한 로 설정하여 기본값으로 다시 재설정할 수 있습니다. 0. 이것은
현재 설정하는 것과 동일합니다. 제한최대 (메모리 사용 제한 없음). 한 번
멀티스레딩 지원이 구현되었으며 0
최대 다중 스레드의 경우 다음을 사용하는 것이 좋습니다. 0 대신 최대
세부 사항이 결정될 때까지.

섹션 참조 메모리 용법.

--memlimit 압축 해제=제한
압축 해제를 위한 메모리 사용량 제한을 설정합니다. 이것은 또한 영향을 미칩니다 --목록 방법. 만약에
초과하지 않고는 작업이 불가능합니다. 제한, xz 오류를 표시합니다
파일 압축 해제가 실패합니다. 보다 --memlimit-압축=제한 가능한
지정하는 방법 제한.

-M 제한, --기억제한=제한, --메모리=제한
이것은 지정하는 것과 동일합니다. --memlimit-압축=제한
--memlimit 압축 해제=제한.

--조정 없음
압축 설정이 메모리 사용량을 초과하면 오류를 표시하고 종료합니다.
한계. 기본값은 설정을 아래쪽으로 조정하여 메모리 사용량이
한도를 초과하지 않습니다. Raw를 생성할 때 자동 조정은 항상 비활성화됩니다.
스트림(--형식=원시).

-T 스레드, --스레드=스레드
사용할 작업자 스레드 수를 지정합니다. 실제 스레드 수는
이하 스레드 더 많은 스레드를 사용하면 메모리 사용 제한을 초과하게 됩니다.

다중 스레드 압축 감압 are 지원 구현 아직, so 선택권
아니 효과 for 지금.

As of 쓰기 (2010-09-27) it 하지 않았다 결정된 if 스레드 의지 be 익숙한 by
디폴트 값 on 멀티 코어 시스템 일단 SUPPORT for 스레딩 구현되었습니다.
코멘트 are 환영. 복잡한 요소는 많은 스레드를 사용하면
메모리 사용량을 크게 늘립니다. 멀티스레딩이
기본적으로 단일 스레드 및 다중 스레드 모드가
동일한 출력을 생성하므로 압축률은 다음과 같은 경우 크게 영향을 받지 않습니다.
스레딩은 기본적으로 활성화됩니다.

관습 압축기 필터링 쇠사슬
사용자 정의 필터 체인을 사용하면 압축 설정 대신 압축 설정을 자세히 지정할 수 있습니다.
사전 설정 수준과 관련된 설정에 의존합니다. 사용자 정의 필터 체인이
지정된 압축 사전 설정 수준 옵션(-0 ... -9--극심한) 조용히
무시되었습니다.

필터 체인은 명령줄의 파이프와 비슷합니다. 압축할 때,
압축되지 않은 입력은 첫 번째 필터로 이동하고 출력은 다음 필터로 이동합니다(만약
어느). 마지막 필터의 출력은 압축 파일에 기록됩니다. 최대치
체인의 필터 수는 XNUMX개이지만 일반적으로 필터 체인에는 하나 또는 두 개만 있습니다.
필터.

많은 필터에는 필터 체인의 위치에 제한이 있습니다. 일부 필터는
체인의 마지막 필터로만 작동하고 일부는 마지막이 아닌 필터로만 작동하고 일부는
체인의 모든 위치에서. 필터에 따라 이 제한은 내재적이거나
필터 설계에 적용되거나 보안 문제를 방지하기 위해 존재합니다.

사용자 정의 필터 체인은 하나 이상의 필터 옵션을 순서대로 사용하여 지정됩니다.
필터 체인에 필요합니다. 즉, 필터 옵션의 순서가 중요합니다!
원시 스트림을 디코딩할 때(--형식=원시), 필터 체인은 동일한 순서로 지정됩니다.
압축할 때 지정한 대로.

필터는 필터에 따라 다릅니다. 옵션 쉼표로 구분된 목록으로. 추가 쉼표 옵션
무시됩니다. 모든 옵션에는 기본값이 있으므로 원하는 옵션만 지정하면 됩니다.
변경 될 수 있습니다.

--lzma1[=옵션]
--lzma2[=옵션]
필터 체인에 LZMA1 또는 LZMA2 필터를 추가합니다. 이 필터는 다음 용도로만 사용할 수 있습니다.
체인의 마지막 필터.

LZMA1은 레거시 필터로, 레거시로 인해 거의 전적으로 지원됩니다. .lzma
LZMA1만 지원하는 파일 형식입니다. LZMA2는 LZMA1의 업데이트된 버전입니다.
LZMA1의 몇 가지 실용적인 문제를 수정합니다. NS .xz 형식은 LZMA2를 사용하며 지원하지 않습니다.
LZMA1 전혀. LZMA1 및 LZMA2의 압축 속도 및 비율은 실질적으로
같은.

LZMA1과 LZMA2는 동일한 세트를 공유합니다. 옵션:

사전 설정=사전
모든 LZMA1 또는 LZMA2 재설정 옵션사전. 프리셋 정수로 구성되며,
단일 문자 사전 설정 수정자가 뒤에 올 수 있습니다. 정수는 다음과 같습니다.
09, 명령줄 옵션과 일치 -0 ... -9. 유일한
지원되는 수정자는 현재 e, 일치하는 --극심한. 기본값
사전 is 6, 나머지 LZMA1 또는
LZMA2 옵션 촬영됩니다.

딕셔너리=크기
사전(히스토리 버퍼) 크기 최근 데이터의 바이트 수를 나타냅니다.
처리된 압축되지 않은 데이터는 메모리에 보관됩니다. 알고리즘은 다음을 찾으려고 합니다.
압축되지 않은 데이터에서 반복되는 바이트 시퀀스(일치) 및 바꾸기
현재 사전에 있는 데이터에 대한 참조를 포함합니다. 더 큰 것
사전일 수록 일치하는 항목을 찾을 확률이 높아집니다. 따라서 증가하는
사전 크기 일반적으로 압축률이 향상되지만 사전은 더 큽니다.
압축되지 않은 파일보다 메모리 낭비입니다.

일반적인 사전 크기 64KiB에서 64MiB입니다. 최소값은 4KiB입니다.
최대 압축은 현재 1.5GiB(1536MiB)입니다. NS
압축 해제기는 이미 4GiB 미만의 최대 XNUMX바이트 사전을 지원합니다.
이는 LZMA1 및 LZMA2 스트림 형식의 최대값입니다.

사전 크기 및 일치 찾기(mf) 함께 메모리 사용량을 결정합니다.
LZMA1 또는 LZMA2 인코더. 동일한(또는 더 큰) 사전 크기 is
압축할 때 사용한 압축 해제에 필요하므로 메모리
디코더의 사용은 다음과 같은 경우에 사용되는 사전 크기에 따라 결정됩니다.
압축. NS .xz 헤더는 사전을 저장 크기 2^n 또는 2^n
+ 2^(n-1), 그래서 이들은 크기 압축에 다소 선호됩니다. 다른
크기 에 저장될 때 반올림됩니다. .xz 헤더.

LC=lc 리터럴 컨텍스트 비트 수를 지정합니다. 최소값은 0이고
최대값은 4입니다. 기본값은 3입니다. 또한 lclp 하지 않아야
4를 초과합니다.

일치로 인코딩할 수 없는 모든 바이트는 리터럴로 인코딩됩니다. 저것
즉, 리터럴은 한 번에 하나씩 인코딩되는 8비트 바이트입니다.

리터럴 코딩은 가장 높은 lc 비트
압축되지 않은 이전 바이트는 다음 바이트와 상관 관계가 있습니다. 예를 들어 일반적으로
영어 텍스트, 대문자 다음에 소문자가 오는 경우가 많습니다.
일반적으로 소문자 다음에 다른 소문자가 옵니다.
US-ASCII 문자 집합에서 상위 010비트는 대문자의 경우 XNUMX입니다.
문자 및 소문자는 011입니다. 언제 lc 리터럴은 3 이상입니다.
코딩은 압축되지 않은 데이터에서 이 속성을 활용할 수 있습니다.

일반적으로 기본값(3)이 좋습니다. 최대 압축을 원하시면
test lc=4. 때로는 조금 도움이 되고 때로는 압축을 하게 됩니다
더 나쁜. 그것이 악화되면 예를 들어 테스트하십시오. lc=2 도.

LP=lp 리터럴 위치 비트 수를 지정합니다. 최소값은 0이고
최대값은 4입니다. 기본값은 0입니다.

Lp 압축되지 않은 데이터의 정렬 유형에 영향을 미칩니다.
인코딩 리터럴. 보다 pb 정렬에 대한 자세한 내용은 아래를 참조하세요.

pb=pb 위치 비트 수를 지정합니다. 최소값은 0이고 최대값은 4입니다.
기본값은 2입니다.

Pb 압축되지 않은 데이터의 정렬 유형에 영향을 미칩니다.
일반. 기본값은 2바이트 정렬을 의미합니다(XNUMX^pb=2^2=4), 종종
더 나은 추측이 없을 때 좋은 선택입니다.

정렬이 알려지면 설정 pb 따라서 파일 크기를 줄일 수 있습니다
조금. 예를 들어 XNUMX바이트 정렬(US-ASCII,
ISO-8859-*, UTF-8), 설정 pb=0 압축을 약간 향상시킬 수 있습니다. 을위한
UTF-16 텍스트, pb=1 좋은 선택입니다. 정렬이 다음과 같은 홀수인 경우
3 바이트, pb=0 최선의 선택이 될 수 있습니다.

가정된 정렬은 다음으로 조정할 수 있지만 pblp, LZMA1 및
LZMA2는 여전히 16바이트 정렬을 약간 선호합니다. 고려할 가치가있을 수 있습니다
자주 압축될 가능성이 있는 파일 형식을 디자인할 때 고려하십시오.
LZMA1 또는 LZMA2.

MF=mf 매치 파인더는 인코더 속도, 메모리 사용량 및
압축비. 일반적으로 해시 체인 매치 파인더는 바이너리보다 빠릅니다.
나무 일치 찾기. 기본값은 다음에 따라 다릅니다. 사전: 0 사용 hc3, 1-3 사용
hc4, 나머지 사용 bt4.

다음 일치 찾기가 지원됩니다. 아래 메모리 사용량 공식
는 대략적인 근사치이며 다음과 같은 경우 실제에 가장 가깝습니다. 딕셔너리 하는
XNUMX의 거듭 제곱.

hc3 2바이트 및 3바이트 해싱이 있는 해시 체인
최소값 좋은: 3
메모리 사용량 :
딕셔너리 * 7.5(만약 딕셔너리 <= 16MiB);
딕셔너리 * 5.5 + 64MiB( 딕셔너리 > 16MiB)

hc4 2, 3, 4바이트 해싱이 포함된 해시 체인
최소값 좋은: 4
메모리 사용량 :
딕셔너리 * 7.5(만약 딕셔너리 <= 32MiB);
딕셔너리 * 6.5(만약 딕셔너리 > 32MiB)

bt2 2바이트 해싱이 있는 이진 트리
최소값 좋은: 2
메모리 사용량 : 딕셔너리 * 9.5

bt3 2바이트 및 3바이트 해싱이 있는 이진 트리
최소값 좋은: 3
메모리 사용량 :
딕셔너리 * 11.5(만약 딕셔너리 <= 16MiB);
딕셔너리 * 9.5 + 64MiB( 딕셔너리 > 16MiB)

bt4 2, 3, 4바이트 해싱이 있는 이진 트리
최소값 좋은: 4
메모리 사용량 :
딕셔너리 * 11.5(만약 딕셔너리 <= 32MiB);
딕셔너리 * 10.5(만약 딕셔너리 > 32MiB)

모드=모드
압축 모드 에 의해 생성된 데이터를 분석하는 방법을 지정합니다.
매치 파인더. 지원 모드 are 빠른표준. 기본값은 빠른 for
사전 0-3 및 표준 for 사전 4 - 9.

보통 빠른 해시 체인 매치 파인더와 함께 사용되며 표준 바이너리로
나무 일치 찾기. 이것은 또한 사전 할.

멋지다=좋은
일치에 적합한 길이로 간주되는 것을 지정하십시오. 한 번 일치
적어도 좋은 바이트가 발견되면 알고리즘이 검색을 중지합니다.
더 나은 경기.

니스 2-273바이트일 수 있습니다. 더 높은 값은 더 나은 압축을 제공하는 경향이 있습니다.
속도를 희생한 비율. 기본값은 다음에 따라 다릅니다. 사전.

깊이=깊이
일치 찾기에서 최대 검색 깊이를 지정합니다. 기본값은
압축기가 합리적으로 결정하도록 하는 특수 값 0 깊이
mf좋은.

합리적인 깊이 해시 체인의 경우 이진 트리의 경우 4-100 및 16-1000입니다.
매우 높은 값을 사용하여 깊이 인코더를 매우 느리게 만들 수 있습니다.
일부 파일. 설정을 피하십시오 깊이 당신이 준비하지 않는 한 1000 이상
너무 오래 걸리는 경우 압축을 중단하십시오.

원시 스트림을 디코딩할 때(--형식=원시), LZMA2는 사전만 필요합니다. 크기.
LZMA1도 필요합니다 lc, lppb.

--x86[=옵션]
--파워PC[=옵션]
--ia64[=옵션]
--팔[=옵션]
--팔 엄지손가락[=옵션]
--sparc[=옵션]
필터 체인에 분기/호출/점프(BCJ) 필터를 추가합니다. 이러한 필터를 사용할 수 있습니다.
필터 체인에서 마지막이 아닌 필터로만 사용됩니다.

BCJ 필터는 기계어 코드의 상대 주소를 절대 주소로 변환합니다.
상대방. 이것은 데이터의 크기를 변경하지 않지만 증가합니다.
LZMA2가 0-15% 더 작게 생성하는 데 도움이 될 수 있는 중복성 .xz 파일. BCJ
필터는 항상 되돌릴 수 있으므로 잘못된 유형의 데이터에 대해 BCJ 필터를 사용하면
압축 비율을 약간 악화시킬 수 있지만 데이터 손실을 일으킬 수 있습니다.

전체 실행 파일에 BCJ 필터를 적용하는 것은 괜찮습니다. 적용할 필요가 없다
실행 섹션에서만. 다음을 포함하는 아카이브에 BCJ 필터 적용
실행 가능한 파일과 실행 불가능한 파일 모두 좋은 결과를 줄 수도 있고 좋지 않을 수도 있습니다.
일반적으로 바이너리 패키지를 압축할 때 BCJ 필터를 맹목적으로 적용하는 것은 좋지 않습니다.
배포용.

이러한 BCJ 필터는 매우 빠르며 메모리를 거의 사용하지 않습니다. BCJ인 경우
필터는 파일의 압축률을 향상시키고 압축 해제 속도를 향상시킬 수 있습니다.
동시. 이는 동일한 하드웨어에서 압축 해제 속도가
LZMA2는 대략 고정된 초당 압축 데이터 바이트 수입니다.

이러한 BCJ 필터에는 압축 비율과 관련된 알려진 문제가 있습니다.

· 실행 코드가 포함된 일부 유형의 파일(예: 개체 파일, 정적
라이브러리 및 Linux 커널 모듈) 지침에 주소가 있습니다.
필러 값으로 채워집니다. 이 BCJ 필터는 여전히 주소를 수행합니다.
변환하면 이러한 파일의 압축이 더 나빠집니다.

· 유사한 실행 파일이 여러 개 포함된 아카이브에 BCJ 필터를 적용하면
BCJ 필터를 사용하지 않는 것보다 압축비를 더 나쁘게 만듭니다. 이 때문입니다
BCJ 필터는 실행 파일의 경계를 감지하지 않으며
각 실행 파일에 대한 주소 변환 카운터를 재설정하지 않습니다.

위의 두 가지 문제는 향후 새 필터에서 수정될 예정입니다. 오래된
BCJ 필터는 임베디드 시스템에서 여전히 유용할 것입니다.
새 필터는 더 커지고 더 많은 메모리를 사용합니다.

명령어 세트마다 정렬 방식이 다릅니다.

필터 정렬 참고 사항
x86 1 32비트 또는 64비트 x86
PowerPC 4 빅 엔디안 전용
ARM 4 리틀 엔디안 전용
ARM-Thumb 2 리틀 엔디안 전용
IA-64 16 빅 또는 리틀 엔디안
SPARC 4 빅 또는 리틀 엔디안

BCJ 필터링된 데이터는 일반적으로 LZMA2로 압축되기 때문에 압축 비율은
LZMA2 옵션이
선택된 BCJ 필터. 예를 들어, IA-64 필터의 경우 다음을 설정하는 것이 좋습니다. pb=4
LZMA2 사용(2^4=16). x86 필터는 예외입니다. 일반적으로 붙어있는 것이 좋습니다.
x2 실행 파일을 압축할 때 LZMA86의 기본 XNUMX바이트 정렬입니다.

모든 BCJ 필터가 동일하게 지원 옵션:

시작=오프셋
시작을 지정 오프셋 상대값과 상대값 사이를 변환할 때 사용
절대 주소. NS 오프셋 의 정렬의 배수여야 합니다.
필터(위의 표 참조). 기본값은 XNUMX입니다. 실제로,
기본값이 좋습니다. 사용자 지정 지정 오프셋 거의 유용하지 않습니다.

--델타[=옵션]
필터 체인에 델타 필터를 추가합니다. 델타 필터는 다음 용도로만 사용할 수 있습니다.
필터 체인의 마지막이 아닌 필터.

현재 간단한 바이트 단위 델타 계산만 지원됩니다. 유용할 수 있습니다
압축되지 않은 비트맵 이미지 또는 압축되지 않은 PCM 오디오와 같이 압축할 때.
그러나 특수 목적 알고리즘은 다음보다 훨씬 더 나은 결과를 제공할 수 있습니다.
델타 + LZMA2. 이것은 특히 오디오의 경우에 해당되며, 더 빠르게 압축되고
더 나은 예를 들어 FLAC(1).

지원 옵션:

거리=거리
지정 거리 델타 계산의 바이트 단위. 거리 해야합니다
1-256. 기본값은 1입니다.

예를 들어 거리=2 1바이트 입력 A1 B2 A3 B3 A5 B4 A7 BXNUMX,
출력은 A1 B1 01 02 01 02 01 02입니다.

기타 옵션
-q, --조용한
경고 및 통지를 억제합니다. 오류도 억제하려면 이것을 두 번 지정하십시오. 이것
옵션은 종료 상태에 영향을 주지 않습니다. 즉, 경고가 있더라도
억제된 경우 경고를 나타내는 종료 상태가 계속 사용됩니다.

-v, --말 수가 많은
장황하게 말하십시오. 표준오차가 터미널에 연결되어 있으면, xz ~을 표시합니다.
진행 표시기. 지정 --말 수가 많은 두 번은 더 자세한 출력을 제공합니다.

진행 표시기는 다음 정보를 보여줍니다.

· 입력 파일의 크기를 알고 있는 경우 완료율이 표시됩니다. 그건,
백분율은 파이프에 표시할 수 없습니다.

· 생성(압축) 또는 소비(압축 해제)된 압축 데이터의 양.

· 소비(압축) 또는 생성(압축 해제)된 압축되지 않은 데이터의 양입니다.

· 압축된 데이터의 양을 나누어 계산한 압축률
지금까지 처리된 압축되지 않은 데이터의 양만큼 지금까지 처리되었습니다.

· 압축 또는 압축 해제 속도. 이것은 다음의 양으로 측정됩니다.
압축되지 않은 데이터가 초당 소비(압축)되거나 생성(압축 해제)됩니다.
이후 몇 초가 지나면 표시됩니다. xz 처리를 시작했습니다
파일.

· M:SS 또는 H:MM:SS 형식의 경과 시간.

· 예상 남은 시간은 입력 파일의 크기를 알고 있는 경우에만 표시됩니다.
그리고 이미 몇 초가 지났습니다. xz 처리를 시작했습니다
파일. 시간은 콜론이 없는 덜 정확한 형식으로 표시됩니다.
예: 2분 30초.

표준오차가 단말이 아닌 경우, --말 수가 많은 만들 것 xz 파일 이름을 인쇄하고,
압축된 크기, 압축되지 않은 크기, 압축 비율 및 속도
압축 후 표준 오류에 대한 한 줄의 경과 시간 또는
파일 압축을 푸는 중입니다. 속도와 경과 시간은 다음과 같은 경우에만 포함됩니다.
작업에는 최소 몇 초가 소요되었습니다. 작업이 완료되지 않은 경우(예:
사용자 중단, 또한 완료 백분율이 인쇄됩니다.
입력 파일이 알려져 있습니다.

-Q, --경고 없음
경고의 가치가 있는 조건이 감지된 경우에도 종료 상태를 2로 설정하지 마십시오.
이 옵션은 상세 수준에 영향을 미치지 않으므로 둘 다 --조용한--경고 없음
경고를 표시하지 않고 종료 상태를 변경하지 않는 데 사용해야 합니다.

--로봇
기계에서 구문 분석 가능한 형식으로 메시지를 인쇄합니다. 이것은 쓰기를 쉽게하기위한 것입니다
사용하려는 프론트엔드 xz liblzma 대신
다양한 스크립트. 이 옵션이 활성화된 출력은
xz 릴리스. 섹션 참조 기계 인간 모드 자세한 내용은.

--정보 메모리
사람이 읽을 수 있는 형식으로 물리적 메모리(RAM)의 양을 표시합니다. xz 생각한다
시스템에는 압축 및 압축 해제에 대한 메모리 사용 제한이 있으며 종료됩니다.
성공적으로.

-h, --도움
가장 일반적으로 사용되는 옵션을 설명하는 도움말 메시지를 표시하고 종료
성공적으로.

-H, --긴 도움
의 모든 기능을 설명하는 도움말 메시지 표시 xz, 성공적으로 종료

-V, --번역
버전 번호 표시 xz 사람이 읽을 수 있는 형식의 liblzma. 얻기 위해
기계 구문 분석 가능한 출력, 지정 --로봇 전에 --번역.

기계 인간 모드


로봇 모드는 다음으로 활성화됩니다. --로봇 옵션. 의 출력을 만듭니다. xz 더 쉬운
다른 프로그램으로 구문 분석합니다. 현재 --로봇 와 함께만 지원됩니다. --번역,
--정보 메모리--목록. 일반 압축 및 압축 해제를 지원합니다.
에서 귀하를 참조하는 데 사용됩니다.

버전
xz --로봇 --번역 의 버전 번호를 인쇄합니다. xz 다음에서 liblzma
형식 :

XZ_버전=XYYZZZZ
LIBLZMA_버전=XYYZZZZ

X 메이저 버전.

YYY 마이너 버전. 짝수는 안정적입니다. 홀수는 알파 또는 베타 버전입니다.

Zzz 안정 릴리스용 패치 수준 또는 개발 릴리스용 카운터일 뿐입니다.

S 안정. 0은 알파, 1은 베타, 2는 안정입니다. S 는 항상 2이어야 합니다. YYY
짝수이다.

XYYZZZZ 다음과 같은 경우 두 줄에서 동일합니다. xz 및 liblzma는 동일한 XZ Utils 릴리스에서 제공됩니다.

예: 4.999.9베타는 49990091 5.0.0는 50000002.

메모리 제한 정보
xz --로봇 --정보 메모리 세 개의 탭으로 구분된 열이 있는 한 줄을 인쇄합니다.

1. 물리적 메모리(RAM)의 총량(바이트)

2. 압축을 위한 메모리 사용량 제한(바이트). 특수 값 XNUMX은 다음을 나타냅니다.
단일 스레드 모드의 경우 제한 없음과 동일한 기본 설정입니다.

3. 압축 해제를 위한 메모리 사용량 제한(바이트). 특수 값 XNUMX은 다음을 나타냅니다.
단일 스레드 모드의 경우 제한 없음과 동일한 기본 설정입니다.

앞으로의 출력은 xz --로봇 --정보 메모리 더 많은 열이 있을 수 있지만 절대
한 줄 이상.

명부 모드
xz --로봇 --목록 탭으로 구분된 출력을 사용합니다. 모든 줄의 첫 번째 열에는 문자열이 있습니다.
해당 줄에서 찾은 정보 유형을 나타냅니다.

name 이것은 파일을 나열하기 시작할 때 항상 첫 번째 줄입니다. 에 대한 두 번째 열
줄은 파일 이름입니다.

파일 이 줄에는 에 대한 전반적인 정보가 포함되어 있습니다. .xz 파일. 이 라인은 항상
인쇄 후 name 줄입니다.

흐름 이 선 유형은 다음 경우에만 사용됩니다. --말 수가 많은 지정되었습니다. 많은 흐름
라인에 스트림이 있기 때문에 .xz 파일.

블록 이 선 유형은 다음 경우에만 사용됩니다. --말 수가 많은 지정되었습니다. 많은 블록
블록이 있기 때문에 선 .xz 파일. 그만큼 블록 라인은 모든 후에 표시됩니다
흐름 윤곽; 다른 라인 유형은 인터리브되지 않습니다.

개요
이 선 유형은 다음 경우에만 사용됩니다. --말 수가 많은 두 번 지정되었습니다. 이 라인은
결국 인쇄 블록 윤곽. 좋아요 파일 라인, 개요 라인 포함
에 대한 전반적인 정보 .xz 파일.

총계 이 줄은 항상 목록 출력의 맨 마지막 줄입니다. 총계를 보여줍니다
개수 및 크기.

파일 윤곽:
2. 파일의 스트림 수
3. 스트림의 총 블록 수
4. 파일의 압축 크기
5. 압축되지 않은 파일 크기
6. 압축비, 예 0.123. 비율이 9.999를 초과하면 대시 XNUMX개
(---)가 비율 대신 표시됩니다.
7. 쉼표로 구분된 무결성 검사 이름 목록. 다음 문자열이 사용됩니다.
알려진 수표 유형: 없음, CRC32, CRC64SHA-256. 알 수 없는 수표의 경우
유형, 알려지지 않은-N 사용되는 곳 N 는 XNUMX진수로 된 수표 ID입니다(XNUMX 또는
두 자리).
8. 파일에서 스트림 패딩의 총 크기

흐름 윤곽:
2. 스트림 번호(첫 번째 스트림은 1)
3. 스트림의 블록 수
4. 압축 시작 오프셋
5. 압축되지 않은 시작 오프셋
6. 압축된 크기(스트림 패딩을 포함하지 않음)
7. 압축되지 않은 크기
8. 압축비
9. 무결성 검사 명칭
10. 스트림 패딩의 크기

블록 윤곽:
2. 이 블록을 포함하는 스트림의 번호
3. 스트림의 시작 부분에 대한 블록 번호(첫 번째 블록은 1)
4. 파일의 시작 부분에 대한 블록 번호
5. 파일의 시작 부분을 기준으로 압축된 시작 오프셋
6. 파일의 시작 부분에 상대적인 압축되지 않은 시작 오프셋
7. 블록의 총 압축 크기(헤더 포함)
8. 압축되지 않은 크기
9. 압축비
10. 무결성 검사 명칭

If --말 수가 많은 가 두 번 지정되면 추가 열이 블록 윤곽.
이것들은 단일로 표시되지 않습니다 --말 수가 많은, 이 정보를 얻으려면
많은 사람들이 찾고 따라서 느릴 수 있습니다.
11. XNUMX진수 무결성 검사 값
12. 블록 헤더 크기
13. 차단 플래그: c 압축된 크기가 있음을 나타냅니다. u 표시
압축되지 않은 크기가 있습니다. 플래그가 설정되지 않은 경우 대시(-)가 표시됩니다
대신 문자열 길이를 고정된 상태로 유지합니다. 새 플래그는 의 끝에 추가될 수 있습니다.
미래의 문자열.
14. 블록에서 실제 압축된 데이터의 크기(블록 제외
헤더, 블록 패딩 및 확인 필드)
15. 이 블록을 압축 해제하는 데 필요한 메모리 양(바이트) xz
버전
16. 필터 체인. 압축 시간에 사용되는 대부분의 옵션은
압축 해제에 필요한 옵션만
전에, .xz 헤더.

개요 윤곽:
2. 이 파일을 압축 해제하는 데 필요한 메모리 양(바이트) xz
버전
3. or 아니 모든 블록 헤더가 압축된 크기와
그 안에 저장된 압축되지 않은 크기
이후 xz 5.1.2알파:
4. 최소 xz 파일의 압축을 푸는 데 필요한 버전

총계 행 :
2. 스트림 수
3. 블록 수
4. 압축 크기
5. 압축되지 않은 크기
6. 평균 압축비
7. 파일에 존재하는 무결성 검사 이름의 쉼표로 구분된 목록
8. 스트림 패딩 크기
9. 파일 수. 이것은 이전 열의 순서를 유지하기 위한 것입니다.
에 동일 파일 윤곽.

If --말 수가 많은 가 두 번 지정되면 추가 열이 총계 행 :
10. 이 파일을 압축 해제하는 데 필요한 최대 메모리 양(바이트)
xz 버전
11. or 아니 모든 블록 헤더가 압축된 크기와
그 안에 저장된 압축되지 않은 크기
이후 xz 5.1.2알파:
12. 최소 xz 파일의 압축을 푸는 데 필요한 버전

향후 버전에서는 새 라인 유형을 추가할 수 있으며 기존 라인에 새 열을 추가할 수 있습니다.
유형이지만 기존 열은 변경되지 않습니다.

EXIT 지위


0 모두 좋은.

1 에러 발생됨.

2 경고할 만한 일이 발생했지만 실제 오류는 발생하지 않았습니다.

표준 오류에 인쇄된 주의사항(경고 또는 오류가 아님)은 종료 상태에 영향을 미치지 않습니다.

환경


xz 환경 변수에서 공백으로 구분된 옵션 목록을 구문 분석합니다. XZ_DEFAULT
XZ_OPT, 명령줄에서 옵션을 구문 분석하기 전에 이 순서로. 참고로
옵션은 환경 변수에서 구문 분석됩니다. 모든 비 옵션은 자동으로 무시됩니다.
구문 분석은 다음과 같이 수행됩니다. getopt_long(3) 명령줄 인수에도 사용됩니다.

XZ_DEFAULT
사용자별 또는 시스템 전체의 기본 옵션. 일반적으로 이것은 쉘에서 설정됩니다.
활성화할 초기화 스크립트 xz기본적으로 의 메모리 사용 제한기입니다. 을 제외한
쉘 초기화 스크립트 및 이와 유사한 특별한 경우 스크립트는 절대로 설정하거나
설정 해제 XZ_DEFAULT.

XZ_OPT 옵션을 전달하기 위한 것입니다. xz 옵션을 설정할 수 없을 때
에 직접 xz 명령줄. 예를 들어 다음과 같은 경우입니다. xz 스크립트에 의해 실행됩니다
또는 도구(예: GNU) 타르(1) :

XZ_OPT=-2v 타르 카페 foo.tar.xz foo

스크립트는 다음을 사용할 수 있습니다. XZ_OPT 예를 들어 스크립트별 기본 압축 옵션을 설정합니다. 그것
사용자가 재정의할 수 있도록 여전히 권장됩니다. XZ_OPT 그것이 합리적인 경우 예를 들어
in sh(1) 다음과 같은 것을 사용할 수 있는 스크립트:

XZ_OPT=${XZ_OPT-"-7e"}
내보내기 XZ_OPT

LZMA 유틸리티 호환성


의 명령줄 구문 xz 는 실질적으로 다음의 상위 집합입니다. 이즈 마, 운즈마이즈캣 as
LZMA Utils 4.32.x에서 찾았습니다. 대부분의 경우 LZMA Utils를 XZ로 교체하는 것이 가능합니다.
기존 스크립트를 손상시키지 않고 유틸리티. 일부 호환되지 않는 부분이 있지만
때때로 문제를 일으킬 수 있습니다.

압축 사전 레벨
압축 수준 사전 설정의 번호는 에서 동일하지 않습니다. xz 및 LZMA 유틸리티. NS
가장 중요한 차이점은 사전 크기가 다른 사전 설정에 매핑되는 방식입니다.
사전 크기는 압축 해제기 메모리 사용량과 거의 같습니다.

레벨 xz LZMA 유틸리티
-0 256KiB 해당 사항 없음
-1 1MiB 64KiB
-2 2MiB 1MiB
-3 4MiB 512KiB
-4 4MiB 1MiB
-5 8MiB 2MiB
-6 8MiB 4MiB
-7 16MiB 8MiB
-8 32MiB 16MiB
-9 64MiB 32MiB

사전 크기 차이는 압축기 메모리 사용량에도 영향을 주지만 일부
LZMA Utils와 XZ Utils의 다른 차이점은 차이를 더욱 크게 만듭니다.

레벨 xz LZMA 유틸리티 4.32.x
-0 3MiB 해당 사항 없음
-1 9MiB 2MiB
-2 17MiB 12MiB
-3 32MiB 12MiB
-4 48MiB 16MiB
-5 94MiB 26MiB
-6 94MiB 45MiB
-7 186MiB 83MiB
-8 370MiB 159MiB
-9 674MiB 311MiB

LZMA Utils의 기본 사전 설정 레벨은 -7 XZ Utils에서는 -6, 따라서 둘 다 8을 사용합니다.
기본적으로 MiB 사전.

스트리밍 스트리밍되지 않은 .lzma 파일
압축되지 않은 파일 크기는 .lzma 헤더. LZMA Utils는 그렇게 합니다.
일반 파일을 압축할 때 대안은 압축되지 않은 크기가
알 수 없고 페이로드 끝 마커를 사용하여 압축 해제기를 중지해야 하는 위치를 나타냅니다.
LZMA Utils는 압축되지 않은 크기를 알 수 없을 때 이 방법을 사용합니다.
파이프의 예.

xz 압축 해제 지원 .lzma 페이로드 끝 마커가 있거나 없는 파일이지만 모든 .lzma
에 의해 생성된 파일 xz 페이로드 끝 마커를 사용하고 압축되지 않은 크기가 다음과 같이 표시됩니다.
에 알려지지 않은 .lzma 헤더. 이것은 일부 드문 상황에서 문제가 될 수 있습니다. 을위한
예를 들어 .lzma 임베디드 장치의 압축 해제기는 다음이 있는 파일에서만 작동할 수 있습니다.
알려진 압축되지 않은 크기. 이 문제가 발생하면 LZMA Utils 또는 LZMA SDK를 사용해야 합니다.
만드는 방법 .lzma 압축되지 않은 크기가 알려진 파일.

지원되지 않음 .lzma 파일
XNUMXD덴탈의 .lzma 형식 허용 lc 8까지의 값, lp 값은 최대 4입니다. LZMA Utils는
임의의 파일 압축 풀기 lclp, 그러나 항상 다음을 사용하여 파일을 생성합니다. lc=3LP=0.
다른 사람과 파일 만들기 lclp 가능하다 xz 그리고 LZMA SDK와 함께.

liblzma에서 LZMA1 필터를 구현하려면 다음의 합이 필요합니다. lclp 절대로 필요한 것
4를 초과하지 마십시오. 따라서, .lzma 이 제한을 초과하는 파일은 압축을 풀 수 없습니다.
xz.

LZMA Utils는 .lzma 사전 크기가 2^인 파일n (2의 거듭제곱) 하지만
모든 사전 크기의 파일을 허용합니다. liblzma만 허용 .lzma 가지고 있는 파일
2^의 사전 크기n 또는 2^n + 2^(n-1). 이는 다음과 같은 경우 오탐을 줄이기 위한 것입니다.
검출 .lzma 파일.

이러한 제한은 실제로 문제가 되지 않아야 합니다. .lzma 파일
liblzma가 허용하는 설정으로 압축되었습니다.

후행 쓰레기
압축을 풀 때 LZMA Utils는 첫 번째 이후의 모든 것을 자동으로 무시합니다. .lzma 스트림입니다.
대부분의 경우 이것은 버그입니다. 이것은 또한 LZMA Utils가 지원하지 않음을 의미합니다
연결해제 .lzma 파일.

첫 번째 이후에 데이터가 남아 있는 경우 .lzma 흐름, xz 파일이 손상된 것으로 간주
...을 제외하면 --단일 스트림 사용되었다. 이것은 다음을 가정한 모호한 스크립트를 깨뜨릴 수 있습니다.
후행 쓰레기는 무시됩니다.

노트


압축 출력 5월 다르다
동일한 압축되지 않은 입력 파일에서 생성된 정확한 압축 출력은 다를 수 있습니다.
압축 옵션이 동일하더라도 XZ Utils 버전 간에. 그 이유는
인코더는 파일 형식에 영향을 주지 않고 향상될 수 있습니다(더 빠르거나 더 나은 압축).
출력은 동일한 XZ Utils 버전의 서로 다른 빌드 간에도 다를 수 있습니다.
다른 빌드 옵션이 사용됩니다.

위의 의미는 구현 --rsyncable rsyncable 생성 .xz 파일이 가지 않습니다
인코더 구현의 일부를 동결하지 않고 발생하여 사용할 수 있습니다.
--rsyncable.

Embedded .xz 압축 해제기
Embedded .xz XZ Embedded와 같은 압축 해제기 구현이 반드시 파일을 지원하는 것은 아닙니다.
정성을 다해 만든 검사 이외의 유형 없음crc32. 기본값은
--체크=crc64, 당신은 사용해야합니다 --check=없음 or --체크=crc32 임베디드용 파일을 생성할 때
시스템.

임베디드 시스템 외부의 모든 .xz 형식 압축 해제기는 모든 검사 유형 또는
최소한 무결성 검사를 확인하지 않고 파일 압축을 풀 수 있습니다.
특별한 검사 지원되지 않습니다.

XZ Embedded는 BCJ 필터를 지원하지만 기본 시작 오프셋만 사용합니다.

사용 예


기초
파일 압축 으로 foo.xz 기본 압축 수준 사용(-6), 제거
압축이 성공한 경우:

xz 푸

압축 해제 바.xz 으로 그리고 제거하지 마세요 바.xz 압축 해제에 성공하더라도:

xz -dk 바.xz

만들기 baz.tar.xz 프리셋으로 -4e (-4 --극심한), 예를 들어
디폴트 값 -6, 그러나 압축 및 압축 해제를 위해 더 적은 메모리가 필요합니다(48MiB 및 5MiB,
각기):

타르 cf - 바즈 | xz -4e > baz.tar.xz

압축된 파일과 압축되지 않은 파일을 혼합하여 다음을 사용하여 표준 출력으로 압축 해제할 수 있습니다.
단일 명령:

xz -dcf a.txt b.txt.xz c.txt d.txt.lzma > abcd.txt

평행 압축 of . 파일
GNU와 *BSD에서, 발견(1)과하면 xargs(1) 많은 압축을 병렬화하는 데 사용할 수 있습니다.
파일 :

찾기 . -유형 f \! -이름 '*.xz' -print0 \
| xargs -0r -P4 -n16 xz -T1

XNUMXD덴탈의 -P ~에 대한 옵션 xargs(1) 병렬 수를 설정합니다. xz 프로세스. 최고의 가치
전에, -n 옵션은 압축할 파일 수에 따라 다릅니다. 만 있으면
파일 몇 개, 값은 아마도 1이어야 합니다. 수만 개의 파일, 100개 또는
수를 줄이기 위해 더 많은 것이 적절할 수 있습니다. xz 프로세스 xargs(1) 의지
결국 생성.

옵션 -T1 for xz 단일 스레드 모드로 강제 실행하려면 xargs(1)은
병렬화의 양을 제어하는 ​​데 사용됩니다.

기계 인간 모드
여러 파일을 압축한 후 총 몇 바이트가 저장되었는지 계산합니다.

xz --robot --list *.xz | awk '/^총계/{$5-$4}' 인쇄

스크립트는 충분히 new를 사용하고 있는지 알고 싶어할 수 있습니다. xz. 다음과 같은 sh(1) 스크립트
의 버전 번호가 xz 도구는 5.0.0 이상입니다. 이 방법은
지원하지 않는 이전 베타 버전과 호환 가능 --로봇 옵션 :

만약 ! 평가판 "$(xz --robot --version 2> /dev/null)" ||
[ "$XZ_VERSION" -lt 50000002 ]; 그 다음에
echo "xz가 너무 오래되었습니다."
fi
XZ_VERSION LIBLZMA_VERSION 설정 해제

다음을 사용하여 압축 해제를 위한 메모리 사용 제한 설정 XZ_OPT하지만 이미 한도가 초과된 경우
설정하고 늘리지 마십시오.

NEWLIM=$((123 << 20)) # 123MiB
OLDLIM=$(xz --로봇 --정보-메모리 | 컷 -f3)
if [ $OLDLIM -eq 0 -o $OLDLIM -gt $NEWLIM ]; 그 다음에
XZ_OPT="$XZ_OPT --memlimit-decompress=$NEWLIM"
내보내기 XZ_OPT
fi

관습 압축기 필터링 쇠사슬
사용자 정의 필터 체인의 가장 간단한 용도는 LZMA2 사전 설정을 사용자 정의하는 것입니다. 이것은 될 수있다
사전 설정은 잠재적으로 유용한 조합의 하위 집합만 다루기 때문에 유용합니다.
압축 설정.

옵션 설명에서 테이블의 CompCPU 열 -0 ... -9
--극심한 LZMA2 사전 설정을 사용자 정의할 때 유용합니다. 다음은 관련 부품입니다
이 두 테이블에서 수집:

사전 설정 CompCPU
- 0 0
- 1 1
- 2 2
- 3 3
- 4 4
- 5 5
- 6 6
-5e 7
-6e 8

파일을 잘 압축하려면 다소 큰 사전(예: 32MiB)이 필요하다는 것을 알고 있다면,
그러나 당신은 그것을보다 빨리 압축하고 싶습니다 xz -8 CompCPU 값이 낮은 사전 설정
(예: 1) 더 큰 사전을 사용하도록 수정할 수 있습니다.

xz --lzma2=사전 설정=1, dict=32MiB foo.tar

특정 파일의 경우 위의 명령이 다음보다 빠를 수 있습니다. xz -6 압축하는 동안
훨씬 더 좋습니다. 그러나 일부 파일만 혜택을 받는다는 점을 강조해야 합니다.
CompCPU 값을 낮게 유지하면서 큰 사전. 가장 분명한 상황은,
큰 사전은 많은 도움이 될 수 있으며 최소한 다음과 같은 매우 유사한 파일을 포함하는 아카이브입니다.
각각 몇 메가바이트입니다. 사전 크기는 어떤 것보다 훨씬 커야 합니다.
LZMA2가 다음 사이의 유사성을 최대한 활용할 수 있도록 개별 파일
연속 파일.

압축기 및 압축 해제기 메모리 사용량이 매우 높고 파일이
압축된 파일은 수백 메가바이트 이상이므로 더 큰 파일을 사용하는 것이 유용할 수 있습니다.
64MiB보다 사전 xz -9 사용할 것이다:

xz -vv --lzma2=dict=192MiB big_foo.tar

사용 -vv (--말 수가 많은 --말 수가 많은) 위의 예와 같이 메모리를 보는 데 유용할 수 있습니다.
압축기 및 감압기의 요구 사항. 더 큰 사전을 사용하는 것을 기억하십시오
압축되지 않은 파일의 크기보다 메모리 낭비이므로 위의 명령은
작은 파일에 유용합니다.

때때로 압축 시간은 중요하지 않지만 압축 해제기 메모리 사용량은
예를 들어 임베디드 시스템에서 파일의 압축을 푸는 것을 가능하게 하기 위해 낮게 유지됩니다. NS
다음 명령 사용 -6e (-6 --극심한)를 기본으로 하고 사전을 다음으로 설정합니다.
64KiB. 결과 파일은 XZ Embedded로 압축을 풀 수 있습니다.
--체크=crc32) 약 100KiB의 메모리를 사용합니다.

xz --check=crc32 --lzma2=사전 설정=6e, dict=64KiB foo

가능한 한 많은 바이트를 짜내려면 리터럴 수를 조정하십시오.
컨텍스트 비트(lc) 및 위치 비트 수(pb) 때때로 도움이 될 수 있습니다. 조정
리터럴 위치 비트 수(lp)도 도움이 될 수 있지만 일반적으로 lcpb 더 있습니다
중요한. 예를 들어 소스 코드 아카이브에는 대부분 US-ASCII 텍스트가 포함되어 있으므로 다음과 같습니다.
다음은 다음보다 약간(0.1%) 작은 파일을 제공할 수 있습니다. xz -6e (없이 시도
lc=4):

xz --lzma2=사전 설정=6e,pb=0,lc=4 source_code.tar

LZMA2와 함께 다른 필터를 사용하면 특정 파일 형식의 압축이 향상될 수 있습니다.
예를 들어 x86 BCJ 필터를 사용하여 x32-86 또는 x64-86 공유 라이브러리를 압축하려면:

xz --x86 --lzma2 libfoo.so

필터 옵션의 순서는 중요합니다. 만약에 --x86 뒤에 지정
--lzma2, xz LZMA2 이후에는 필터가 없기 때문에 오류가 발생하고 또한
x86 BCJ 필터는 체인의 마지막 필터로 사용할 수 없기 때문입니다.

LZMA2와 델타 필터를 함께 사용하면 비트맵 이미지에서 좋은 결과를 얻을 수 있습니다. 그것은해야
일반적으로 단순 델타보다 몇 가지 고급 필터가 있지만 Deflate를 사용하는 PNG를 능가합니다.
실제 압축을 위해.

이미지는 압축되지 않은 TIFF와 같은 압축되지 않은 형식으로 저장해야 합니다. 거리
Delta 필터의 매개변수는 이미지의 픽셀당 바이트 수와 일치하도록 설정됩니다.
예: 24비트 RGB 비트맵 필요 거리=3, 그리고 통과하는 것도 좋습니다. pb=0 LZMA2로
XNUMX바이트 정렬 수용:

xz --delta=dist=3 --lzma2=pb=0 foo.tiff

여러 이미지를 단일 아카이브에 넣은 경우(예: .타르), 델타 필터는
모든 이미지가 픽셀당 동일한 바이트 수를 갖는 한 그것도 작업하십시오.

onworks.net 서비스를 사용하여 온라인으로 xzcat 사용


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

Linux 명령

Ad