Tiếng AnhTiếng PhápTiếng Tây Ban Nha

Ad


Biểu tượng yêu thích OnWorks

xzcat - Trực tuyến trên đám mây

Chạy xzcat trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks trên Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

Đây là lệnh xzcat có thể được chạy trong nhà cung cấp dịch vụ lưu trữ miễn phí OnWorks bằng cách sử dụng một trong nhiều máy trạm trực tuyến miễn phí của chúng tôi như Ubuntu Online, Fedora Online, trình giả lập trực tuyến Windows hoặc trình mô phỏng trực tuyến MAC OS

CHƯƠNG TRÌNH:

TÊN


xz, unxz, xzcat, lzma, unlzma, lzcat - Nén hoặc giải nén các tệp .xz và .lzma

SYNOPSIS


xz [tùy chọn] ... [hồ sơ] ...

giải nén tương đương với xz --giải nén.
xzcat tương đương với xz --giải nén --thiết bị xuất chuẩn.
lma tương đương với xz --format = lzma.
unlzma tương đương với xz --format = lzma --giải nén.
lzcat tương đương với xz --format = lzma --giải nén --thiết bị xuất chuẩn.

Khi viết các tập lệnh cần giải nén tệp, bạn nên luôn sử dụng
tên xz với các đối số thích hợp (xz -d or xz -dc) thay vì tên giải nénxzcat.

MÔ TẢ


xz là một công cụ nén dữ liệu có mục đích chung với cú pháp dòng lệnh tương tự như gzip(1)
bzip2(1). Định dạng tệp gốc là .xz định dạng, nhưng kế thừa .lzma định dạng được sử dụng
bởi LZMA Utils và các luồng nén thô không có tiêu đề định dạng vùng chứa cũng
được hỗ trợ.

xz nén hoặc giải nén từng hồ sơ theo chế độ hoạt động đã chọn. Nếu không
các tập tin được cho hoặc hồ sơ is -, xz đọc từ đầu vào chuẩn và ghi dữ liệu đã xử lý
đến đầu ra tiêu chuẩn. xz sẽ từ chối (hiển thị lỗi và bỏ qua hồ sơ) viết
dữ liệu nén thành đầu ra tiêu chuẩn nếu nó là một thiết bị đầu cuối. Tương tự, xz sẽ từ chối đọc
dữ liệu nén từ đầu vào chuẩn nếu nó là một thiết bị đầu cuối.

Trừ khi --thiết bị xuất chuẩn được quy định, các tập tin khác hơn - được ghi vào một tệp mới có tên là
bắt nguồn từ nguồn hồ sơ tên:

· Khi nén, hậu tố của định dạng tệp đích (.xz or .lzma) được thêm vào
tên tệp nguồn để lấy tên tệp đích.

· Khi giải nén, .xz or .lzma hậu tố bị xóa khỏi tên tệp để lấy
tên tệp đích. xz cũng nhận ra các hậu tố .txz.tlzvà thay thế chúng bằng
các .tar hậu tố.

Nếu tệp đích đã tồn tại, một lỗi sẽ hiển thị và hồ sơ bị bỏ qua.

Trừ khi ghi vào đầu ra tiêu chuẩn, xz sẽ hiển thị cảnh báo và bỏ qua hồ sơ nếu có
những điều sau áp dụng:

· Tập tin không phải là một tệp thông thường. Các liên kết tượng trưng không được tuân theo và do đó chúng không
được coi là các tệp thông thường.

· Tập tin có nhiều hơn một liên kết cứng.

· Tập tin đã setuid, setgid, hoặc cố định bit.

· Chế độ hoạt động được thiết lập để nén và hồ sơ đã có một hậu tố của mục tiêu
định dạng tệp (.xz or .txz khi nén vào .xz định dạng và .lzma or .tlz khi nào
nén vào .lzma định dạng).

· Chế độ hoạt động được đặt thành giải nén và hồ sơ không có hậu tố của bất kỳ
các định dạng tệp được hỗ trợ (.xz, .txz, .lzma, hoặc là .tlz).

Sau khi nén hoặc giải nén thành công hồ sơ, xz sao chép chủ sở hữu, nhóm,
quyền, thời gian truy cập và thời gian sửa đổi từ nguồn hồ sơ vào tệp đích.
Nếu sao chép nhóm không thành công, các quyền sẽ được sửa đổi để tệp đích không
có thể truy cập được đối với những người dùng không có quyền truy cập vào nguồn hồ sơ. xz
không hỗ trợ sao chép siêu dữ liệu khác như danh sách kiểm soát truy cập hoặc các thuộc tính mở rộng
được nêu ra.

Khi tệp đích đã được đóng thành công, nguồn hồ sơ bị loại bỏ trừ khi
--giữ cho đã được chỉ định. Nguồn hồ sơ không bao giờ bị xóa nếu đầu ra được ghi vào
đầu ra tiêu chuẩn.

Gửi ĐĂNG KÝ or SIGUSR1 đến xz quy trình làm cho nó in thông tin tiến trình để
lỗi tiêu chuẩn. Điều này chỉ được sử dụng hạn chế vì khi lỗi tiêu chuẩn là một thiết bị đầu cuối, sử dụng
--dài dòng sẽ hiển thị chỉ báo tiến độ cập nhật tự động.

Bộ nhớ sử dụng
Việc sử dụng bộ nhớ của xz thay đổi từ vài trăm kilobyte đến vài gigabyte tùy thuộc
trên cài đặt nén. Các cài đặt được sử dụng khi nén tệp xác định
yêu cầu bộ nhớ của bộ giải nén. Thông thường, bộ giải nén cần 5% đến 20%
dung lượng bộ nhớ mà máy nén cần thiết khi tạo tệp. Ví dụ,
giải nén một tệp được tạo bằng xz -9 hiện yêu cầu bộ nhớ 65 MiB. Tuy nhiên, nó là
có thể có .xz các tệp yêu cầu vài GB bộ nhớ để giải nén.

Đặc biệt là người dùng các hệ thống cũ có thể thấy khả năng sử dụng bộ nhớ rất lớn
làm phiền. Để tránh những bất ngờ khó chịu, xz có giới hạn sử dụng bộ nhớ tích hợp,
được tắt theo mặc định. Trong khi một số hệ điều hành cung cấp các cách để hạn chế
việc sử dụng bộ nhớ của các quy trình, dựa vào nó không được coi là đủ linh hoạt (ví dụ: sử dụng
giới hạn(1) để hạn chế bộ nhớ ảo có xu hướng làm tê liệt mmap(2)).

Có thể bật giới hạn sử dụng bộ nhớ bằng tùy chọn dòng lệnh --memlimit =hạn chế.
Thường thì sẽ thuận tiện hơn nếu bật giới hạn theo mặc định bằng cách thiết lập môi trường
biến Xz_DEFAULTS, ví dụ XZ_DEFAULTS = - memlimit = 150MiB. Có thể thiết lập
giới hạn riêng cho nén và giải nén bằng cách sử dụng --memlimit -ression =hạn chế
--memlimit-giải nén =hạn chế. Sử dụng hai tùy chọn này bên ngoài Xz_DEFAULTS hiếm khi hữu ích
bởi vì một lần chạy xz không thể thực hiện cả nén và giải nén và
--memlimit =hạn chế (Hoặc -M hạn chế) ngắn hơn để gõ trên dòng lệnh.

Nếu vượt quá giới hạn sử dụng bộ nhớ đã chỉ định khi giải nén, xz sẽ hiển thị một
lỗi và giải nén tệp sẽ không thành công. Nếu vượt quá giới hạn khi nén, xz
sẽ cố gắng thu nhỏ cài đặt để không còn vượt quá giới hạn (trừ khi
sử dụng --format = raw or - không điều chỉnh). Bằng cách này, hoạt động sẽ không thất bại trừ khi giới hạn là
rất nhỏ. Việc chia tỷ lệ cài đặt được thực hiện theo các bước không khớp với quá trình nén
mức đặt trước, ví dụ: nếu giới hạn chỉ nhỏ hơn một chút so với số tiền cần thiết cho xz -9,
cài đặt sẽ chỉ được thu nhỏ lại một chút, không phải toàn bộ xz -8.

Sự kết hợp đệm với .xz các tập tin
Có thể ghép nối .xz các tệp như hiện tại. xz sẽ giải nén các tệp như vậy nếu chúng
là một người duy nhất .xz tập tin.

Có thể chèn thêm phần đệm vào giữa các phần nối hoặc sau phần cuối cùng.
Phần đệm phải bao gồm các byte trống và kích thước của phần đệm phải là bội số
bốn byte. Điều này có thể hữu ích, ví dụ: nếu .xz tệp được lưu trữ trên một phương tiện đo lường
kích thước tệp trong khối 512 byte.

Không cho phép nối và đệm với .lzma tệp hoặc luồng thô.

LỰA CHỌN


Số nguyên hậu tố đặc biệt giá trị
Ở hầu hết những nơi mà đối số số nguyên được mong đợi, một hậu tố tùy chọn được hỗ trợ
dễ dàng chỉ ra số nguyên lớn. Không được có khoảng trắng giữa số nguyên và
hậu tố.

KiB Nhân số nguyên với 1,024 (2 ^ 10). Ki, k, kB, KKB được chấp nhận là
từ đồng nghĩa với KiB.

Eb Nhân số nguyên với 1,048,576 (2 ^ 20). Mi, m, MMB được chấp nhận là
từ đồng nghĩa với Eb.

GiB Nhân số nguyên với 1,073,741,824 (2 ^ 30). Gi, g, GGB được chấp nhận là
từ đồng nghĩa với GiB.

Giá trị đặc biệt tối đa có thể được sử dụng để chỉ ra giá trị số nguyên tối đa được hỗ trợ bởi
tùy chọn.

hoạt động chế độ
Nếu nhiều tùy chọn chế độ hoạt động được đưa ra, tùy chọn cuối cùng sẽ có hiệu lực.

-z, - nén
Nén. Đây là chế độ hoạt động mặc định khi không có tùy chọn chế độ hoạt động
được chỉ định và không có chế độ hoạt động nào khác được ngụ ý từ tên lệnh (đối với
thí dụ, giải nén ngụ ý --giải nén).

-d, --giải nén, --giải nén
Giải nén.

-t, --kiểm tra
Kiểm tra tính toàn vẹn của nén các tập tin. Tùy chọn này tương đương với --giải nén
--thiết bị xuất chuẩn ngoại trừ việc dữ liệu đã giải nén bị loại bỏ thay vì được ghi vào
đầu ra tiêu chuẩn. Không có tệp nào được tạo hoặc xóa.

-l, --danh sách
In thông tin về nén các tập tin. Không có đầu ra không nén nào được tạo ra và
không có tệp nào được tạo hoặc xóa. Ở chế độ danh sách, chương trình không thể đọc
dữ liệu nén từ đầu vào tiêu chuẩn hoặc từ các nguồn khó thấy khác.

Danh sách mặc định hiển thị thông tin cơ bản về các tập tin, một tệp trên mỗi dòng. Để có được
thông tin chi tiết hơn, sử dụng --dài dòng Lựa chọn. Để biết thêm
thông tin, sử dụng --dài dòng hai lần, nhưng lưu ý rằng điều này có thể chậm, vì nhận được
tất cả các thông tin bổ sung đòi hỏi nhiều tìm kiếm. Chiều rộng của đầu ra dài dòng vượt quá
80 ký tự, do đó đặt đầu ra thành ví dụ ít -S có thể thuận tiện nếu
thiết bị đầu cuối không đủ rộng.

Đầu ra chính xác có thể khác nhau giữa xz phiên bản và các ngôn ngữ khác nhau. Đối với máy-
đầu ra có thể đọc được, --robot --danh sách nên được sử dụng.

hoạt động bổ ngữ
-k, --giữ cho
Không xóa các tập tin đầu vào.

-f, --lực lượng
Tùy chọn này có một số tác dụng:

· Nếu tệp đích đã tồn tại, hãy xóa nó trước khi nén hoặc
giải nén.

· Nén hoặc giải nén ngay cả khi đầu vào là một liên kết tượng trưng đến một tệp thông thường,
có nhiều hơn một liên kết cứng hoặc có tập hợp bit setuid, setgid hoặc dính. Các
các bit setuid, setgid và dính không được sao chép vào tệp đích.

· Khi được sử dụng với --giải nén --thiết bị xuất chuẩnxz không thể nhận ra loại
tập tin nguồn, sao chép tập tin nguồn như là đầu ra tiêu chuẩn. Điều này cho phép xzcat
--lực lượng được sử dụng như làm sao(1) đối với các tệp chưa được nén bằng xz.
Lưu ý rằng trong tương lai, xz có thể hỗ trợ các định dạng tệp nén mới, có thể
làm cho xz giải nén nhiều loại tệp hơn thay vì sao chép chúng theo tiêu chuẩn
đầu ra. --format =định dạng có thể được sử dụng để hạn chế xz để giải nén chỉ một
định dạng tệp.

-c, --thiết bị xuất chuẩn, --đến thiết bị xuất chuẩn
Ghi dữ liệu được nén hoặc giải nén vào đầu ra tiêu chuẩn thay vì một tệp.
Điều này nghĩa là --giữ cho.

- một luồng
Chỉ giải nén đầu tiên .xz phát trực tiếp và im lặng bỏ qua thông tin đầu vào còn lại có thể có
dữ liệu theo luồng. Thông thường, những thứ rác thải kéo dài như vậy làm cho xz hiển thị một
lỗi.

xz không bao giờ giải nén nhiều hơn một luồng từ .lzma tệp hoặc luồng thô, nhưng
tùy chọn này vẫn làm cho xz bỏ qua dữ liệu theo sau có thể có sau .lzma hồ sơ
hoặc luồng thô.

Tùy chọn này không có hiệu lực nếu chế độ hoạt động không --giải nén or --kiểm tra.

- không thưa thớt
Vô hiệu hóa việc tạo các tệp thưa thớt. Theo mặc định, nếu giải nén thành một
tập tin, xz cố gắng làm cho tệp trở nên thưa thớt nếu dữ liệu được giải nén chứa nhiều
dãy số không nhị phân. Nó cũng hoạt động khi ghi vào đầu ra tiêu chuẩn miễn là
như đầu ra tiêu chuẩn được kết nối với một tệp thông thường và một số điều kiện bổ sung nhất định
được đáp ứng để làm cho nó an toàn. Tạo các tệp thưa thớt có thể tiết kiệm dung lượng ổ đĩa và tăng tốc độ
giải nén bằng cách giảm số lượng I / O đĩa.

-S .suf, --suffix =.suf
Khi nén, sử dụng .suf làm hậu tố cho tệp đích thay vì .xz or
.lzma. Nếu không ghi vào đầu ra tiêu chuẩn và tệp nguồn đã có
hậu tố .suf, một cảnh báo được hiển thị và tệp bị bỏ qua.

Khi giải nén, hãy nhận dạng các tệp có hậu tố .suf ngoài các tệp với
các .xz, .txz, .lzma, hoặc là .tlz hậu tố. Nếu tệp nguồn có hậu tố .suf, Các
hậu tố bị loại bỏ để lấy tên tệp đích.

Khi nén hoặc giải nén các luồng thô (--format = raw), hậu tố phải
luôn được chỉ định trừ khi ghi vào đầu ra tiêu chuẩn, vì không có mặc định
hậu tố cho luồng thô.

--các tập tin[=hồ sơ]
Đọc tên tệp để xử lý hồ sơ; nếu hồ sơ bị bỏ qua, tên tệp được đọc
từ đầu vào tiêu chuẩn. Tên tệp phải được kết thúc bằng ký tự dòng mới. MỘT
gạch ngang (-) được lấy làm tên tệp thông thường; nó không có nghĩa là đầu vào tiêu chuẩn. Nếu như
tên tệp cũng được cung cấp dưới dạng đối số dòng lệnh, chúng được xử lý trước
tên tệp được đọc từ hồ sơ.

--files0[=hồ sơ]
Điều này giống hệt với --các tập tin[=hồ sơ] ngoại trừ mỗi tên tệp phải được kết thúc
với ký tự null.

Cơ bản hồ sơ định dạng nén lựa chọn
-F định dạng, --format =định dạng
Chỉ định tệp định dạng để nén hoặc giải nén:

tự động Đây là mặc định. Khi nén, tự động tương đương với xz. Khi nào
giải nén, định dạng của tệp đầu vào sẽ tự động được phát hiện. Ghi chú
luồng thô đó (được tạo bằng --format = raw) không thể được tự động phát hiện.

xz Nén vào .xz định dạng tệp hoặc chỉ chấp nhận .xz tập tin khi
giải nén.

lma, cô đơn
Nén thành kế thừa .lzma định dạng tệp hoặc chỉ chấp nhận .lzma tập tin khi
giải nén. Tên thay thế cô đơn được cung cấp cho ngược lại
khả năng tương thích với LZMA Utils.

nguyên Nén hoặc giải nén luồng thô (không có tiêu đề). Điều này có nghĩa là cho
chỉ người dùng nâng cao. Để giải mã các luồng thô, bạn cần sử dụng --format = raw
chỉ định rõ ràng chuỗi bộ lọc, thường sẽ được lưu trữ
trong tiêu đề vùng chứa.

-C kiểm tra, --check =kiểm tra
Chỉ định loại kiểm tra tính toàn vẹn. Séc được tính từ
dữ liệu không nén và được lưu trữ trong .xz tập tin. Tùy chọn này chỉ có hiệu lực khi
nén vào .xz định dạng; NS .lzma định dạng không hỗ trợ kiểm tra tính toàn vẹn.
Kiểm tra tính toàn vẹn (nếu có) được xác minh khi .xz tập tin được giải nén.

Hỗ trợ kiểm tra các loại:

không ai Không tính toán một kiểm tra tính toàn vẹn nào cả. Đây thường là một ý tưởng tồi.
Điều này có thể hữu ích khi tính toàn vẹn của dữ liệu được xác minh bằng các phương tiện khác
dù sao.

crc32 Tính CRC32 bằng cách sử dụng đa thức từ IEEE-802.3 (Ethernet).

crc64 Tính CRC64 bằng cách sử dụng đa thức từ ECMA-182. Đây là mặc định,
vì nó tốt hơn một chút so với CRC32 trong việc phát hiện các tệp bị hỏng và
tốc độ chênh lệch không đáng kể.

sha256 Tính SHA-256. Điều này hơi chậm hơn CRC32 và CRC64.

Tính toàn vẹn của .xz tiêu đề luôn được xác minh với CRC32. Nó không thể
thay đổi hoặc vô hiệu hóa nó.

-0 hữu ích. Cảm ơn ! -9
Chọn mức nén đặt trước. Mặc định là -6. Nếu nhiều mức đặt trước
được chỉ định, điều cuối cùng có hiệu lực. Nếu một chuỗi bộ lọc tùy chỉnh đã
đã chỉ định, việc đặt mức nén đặt trước sẽ xóa chuỗi bộ lọc tùy chỉnh.

Sự khác biệt giữa các giá trị đặt trước đáng kể hơn so với gzip(1)
bzip2(1). Các cài đặt nén đã chọn xác định yêu cầu bộ nhớ của
bộ giải nén, do đó sử dụng mức đặt trước quá cao có thể làm cho
giải nén tệp trên hệ thống cũ với ít RAM. Đặc biệt, không a
tốt ý tưởng đến mù quáng sử dụng -9 cho tất cả mọi thứ như nó thường là với gzip(1)
bzip2(1).

-0 hữu ích. Cảm ơn ! -3
Đây là những cài đặt trước hơi nhanh. -0 đôi khi nhanh hơn gzip -9 trong khi
nén tốt hơn nhiều. Những cái cao hơn thường có tốc độ tương đương với
bzip2(1) với tỷ lệ nén tương đương hoặc tốt hơn, mặc dù kết quả
phụ thuộc rất nhiều vào loại dữ liệu được nén.

-4 hữu ích. Cảm ơn ! -6
Nén tốt đến rất tốt trong khi vẫn sử dụng bộ nhớ của trình giải nén
hợp lý ngay cả đối với các hệ thống cũ. -6 là mặc định, thường là tốt
lựa chọn, ví dụ: để phân phối các tệp cần được giải nén ngay cả trên
hệ thống chỉ có RAM 16 MiB. (-5e or -6e cũng có thể đáng xem xét.
Xem --cực.)

-7 hữu ích. Cảm ơn ! -9
Những thứ này giống như -6 nhưng với bộ nhớ máy nén và bộ giải nén cao hơn
các yêu cầu. Những điều này chỉ hữu ích khi nén các tệp lớn hơn
Lần lượt là 8 MiB, 16 MiB và 32 MiB.

Trên cùng một phần cứng, tốc độ giải nén xấp xỉ một số không đổi
byte dữ liệu nén mỗi giây. Nói cách khác, nén càng tốt,
giải nén thường sẽ nhanh hơn. Điều này cũng có nghĩa là lượng
đầu ra không nén được tạo ra mỗi giây có thể thay đổi rất nhiều.

Bảng sau đây tóm tắt các tính năng của các giá trị đặt trước:

Đặt trước DictSize CompCPU CompMem DecMem
-0 256 KiB 0 3 MiB 1 MiB
-1 1 MiB 1 9 MiB 2 MiB
-2 2 MiB 2 17 MiB 3 MiB
-3 4 MiB 3 32 MiB 5 MiB
-4 4 MiB 4 48 MiB 5 MiB
-5 8 MiB 5 94 MiB 9 MiB
-6 8 MiB 6 94 MiB 9 MiB
-7 16 MiB 6 186 MiB 17 MiB
-8 32 MiB 6 370 MiB 33 MiB
-9 64 MiB 6 674 MiB 65 MiB

Mô tả cột:

· DictSize là kích thước từ điển LZMA2. Thật lãng phí bộ nhớ khi sử dụng
từ điển lớn hơn kích thước của tệp không nén. Đây là lý do tại sao nó là
tốt để tránh sử dụng các cài đặt trước -7 hữu ích. Cảm ơn ! -9 khi không có nhu cầu thực sự về chúng.
At -6 và thấp hơn, lượng bộ nhớ bị lãng phí thường đủ thấp để không
vấn đề.

· CompCPU là một đại diện đơn giản của các cài đặt LZMA2 ảnh hưởng đến
tốc độ nén. Kích thước từ điển cũng ảnh hưởng đến tốc độ, vì vậy trong khi CompCPU
tương tự cho các cấp -6 hữu ích. Cảm ơn ! -9, các cấp cao hơn vẫn có xu hướng chậm hơn một chút.
Để có tốc độ chậm hơn và do đó có thể nén tốt hơn, hãy xem --cực.

· CompMem chứa các yêu cầu bộ nhớ máy nén ở chế độ một luồng.
Nó có thể thay đổi một chút giữa xz các phiên bản. Yêu cầu bộ nhớ của một số
các chế độ đa luồng trong tương lai có thể cao hơn đáng kể so với chế độ đơn
chế độ phân luồng.

· DecMem chứa các yêu cầu bộ nhớ của trình giải nén. Đó là, nén
cài đặt xác định yêu cầu bộ nhớ của bộ giải nén. Chính xác
Việc sử dụng bộ nhớ giải nén nhiều hơn rất nhiều so với kích thước từ điển LZMA2, nhưng
các giá trị trong bảng đã được làm tròn thành MiB đầy đủ tiếp theo.

-e, --cực
Sử dụng một biến thể chậm hơn của mức đặt trước nén đã chọn (-0 hữu ích. Cảm ơn ! -9) Để
hy vọng có được tỷ lệ nén tốt hơn một chút, nhưng thật không may, điều này có thể
cũng làm cho nó tồi tệ hơn. Việc sử dụng bộ nhớ của trình giải nén không bị ảnh hưởng, nhưng máy nén
mức sử dụng bộ nhớ tăng lên một chút ở các mức đặt trước -0 hữu ích. Cảm ơn ! -3.

Vì có hai cài đặt trước với kích thước từ điển 4 MiB và 8 MiB, các cài đặt trước -3e
-5e sử dụng cài đặt nhanh hơn một chút (CompCPU thấp hơn) so với -4e-6e,
tương ứng. Bằng cách đó, không có hai cài đặt trước nào giống hệt nhau.

Đặt trước DictSize CompCPU CompMem DecMem
-0e 256 KiB 8 4 MiB 1 MiB
-1e 1 MiB 8 13 MiB 2 MiB
-2e 2 MiB 8 25 MiB 3 MiB
-3e 4 MiB 7 48 MiB 5 MiB
-4e 4 MiB 8 48 MiB 5 MiB
-5e 8 MiB 7 94 MiB 9 MiB
-6e 8 MiB 8 94 MiB 9 MiB
-7e 16 MiB 8 186 MiB 17 MiB
-8e 32 MiB 8 370 MiB 33 MiB
-9e 64 MiB 8 674 MiB 65 MiB

Ví dụ: có tổng cộng bốn cài đặt trước sử dụng từ điển 8 MiB, có
thứ tự từ nhanh nhất đến chậm nhất là -5, -6, -5e-6e.

--Nhanh
--tốt nhất Đây là những bí danh hơi gây hiểu lầm cho -0-9, tương ứng. đó là
chỉ được cung cấp để tương thích ngược với LZMA Utils. Tránh sử dụng những
tùy chọn.

--block-size =kích thước
Khi nén .xz định dạng, chia dữ liệu đầu vào thành các khối kích thước byte.
Các khối được nén độc lập với nhau.

--memlimit -ression =hạn chế
Đặt giới hạn sử dụng bộ nhớ để nén. Nếu tùy chọn này được chỉ định nhiều
lần cuối cùng có hiệu lực.

Nếu cài đặt nén vượt quá hạn chế, xz sẽ điều chỉnh cài đặt xuống dưới
để giới hạn không còn bị vượt quá và hiển thị thông báo tự động
điều chỉnh đã được thực hiện. Những điều chỉnh như vậy không được thực hiện khi nén với
--format = raw hoặc nếu - không điều chỉnh đã được chỉ định. Trong những trường hợp đó, một lỗi là
hiển thị và xz sẽ thoát với trạng thái thoát 1.

Sản phẩm hạn chế có thể được chỉ định theo nhiều cách:

· Các hạn chế có thể là một giá trị tuyệt đối tính bằng byte. Sử dụng hậu tố số nguyên như Eb
có thể hữu ích. Thí dụ: --memlimit-nén = 80MiB

· Các hạn chế có thể được chỉ định dưới dạng phần trăm tổng bộ nhớ vật lý (RAM). Cái này
có thể hữu ích, đặc biệt là khi thiết lập Xz_DEFAULTS biến môi trường trong một
tập lệnh khởi tạo shell được chia sẻ giữa các máy tính khác nhau. Điều đó
theo cách giới hạn tự động lớn hơn trên hệ thống có nhiều bộ nhớ hơn. Thí dụ:
--memlimit-nén = 70%

· Các hạn chế có thể được đặt lại về giá trị mặc định của nó bằng cách đặt nó thành 0. Đây là
hiện tại tương đương với việc thiết lập hạn chế đến tối đa (không giới hạn bộ nhớ sử dụng). Một lần
hỗ trợ đa luồng đã được triển khai, có thể có sự khác biệt giữa 0
tối đa đối với trường hợp đa luồng, vì vậy bạn nên sử dụng 0 thay vì tối đa
cho đến khi các chi tiết đã được quyết định.

Xem thêm phần Bộ nhớ sử dụng.

--memlimit-giải nén =hạn chế
Đặt giới hạn sử dụng bộ nhớ để giải nén. Điều này cũng ảnh hưởng đến --danh sách chế độ. Nếu như
hoạt động không thể thực hiện được nếu không vượt quá hạn chế, xz sẽ hiển thị một lỗi
và giải nén tệp sẽ không thành công. Nhìn thấy --memlimit -ression =hạn chế cho có thể
cách để chỉ định hạn chế.

-M hạn chế, --memlimit =hạn chế, --memory =hạn chế
Điều này tương đương với việc chỉ định --memlimit -ression =hạn chế
--memlimit-giải nén =hạn chế.

- không điều chỉnh
Hiển thị lỗi và thoát nếu cài đặt nén vượt quá mức sử dụng bộ nhớ
giới hạn. Mặc định là điều chỉnh cài đặt xuống dưới để sử dụng bộ nhớ
giới hạn không được vượt quá. Điều chỉnh tự động luôn bị tắt khi tạo thô
dòng suối (--format = raw).

-T chủ đề, --threads =chủ đề
Chỉ định số luồng công nhân sẽ sử dụng. Số lượng chủ đề thực tế có thể là
ít hơn chủ đề nếu sử dụng nhiều luồng hơn sẽ vượt quá giới hạn sử dụng bộ nhớ.

Đa luồng nén giảm bớt sức ép đang không thực hiện chưa, so điều này tùy chọn
Không hiệu lực cho ngay bây giờ.

As of viết (2010-09-27) it không có được quyết định if chủ đề sẽ be đã sử dụng by
mặc định on nhiều nhân hệ thống hàng loạt hỗ trợ cho luồng được thực hiện.
Nhận xét đang chào mừng Yếu tố phức tạp là sử dụng nhiều chủ đề sẽ
tăng mức sử dụng bộ nhớ lên đáng kể. Lưu ý rằng nếu đa luồng sẽ là
mặc định, nó có thể sẽ được thực hiện để các chế độ đơn luồng và đa luồng
tạo ra cùng một đầu ra, vì vậy tỷ lệ nén sẽ không bị ảnh hưởng đáng kể nếu
phân luồng sẽ được bật theo mặc định.

Tuỳ chỉnh máy nén lọc chuỗi
Chuỗi bộ lọc tùy chỉnh cho phép chỉ định chi tiết cài đặt nén thay vì
dựa vào các cài đặt được liên kết với các mức đặt trước. Khi chuỗi bộ lọc tùy chỉnh là
được chỉ định, các tùy chọn mức độ nén đặt trước (-0 hữu ích. Cảm ơn ! -9--cực) đang âm thầm
mặc kệ.

Chuỗi bộ lọc có thể so sánh với đường ống trên dòng lệnh. Khi nén,
đầu vào không nén chuyển đến bộ lọc đầu tiên, đầu ra của nó sẽ chuyển đến bộ lọc tiếp theo (nếu
không tí nào). Đầu ra của bộ lọc cuối cùng được ghi vào tệp nén. Giá trị lớn nhất
số lượng bộ lọc trong chuỗi là bốn, nhưng thông thường một chuỗi bộ lọc chỉ có một hoặc hai
bộ lọc.

Nhiều bộ lọc có giới hạn về vị trí của chúng trong chuỗi bộ lọc: một số bộ lọc có thể
chỉ hoạt động như bộ lọc cuối cùng trong chuỗi, một số chỉ hoạt động như một bộ lọc không phải bộ lọc cuối cùng và một số hoạt động
ở bất kỳ vị trí nào trong chuỗi. Tùy thuộc vào bộ lọc, hạn chế này là cố hữu
thiết kế bộ lọc hoặc tồn tại để ngăn chặn các vấn đề bảo mật.

Chuỗi bộ lọc tùy chỉnh được chỉ định bằng cách sử dụng một hoặc nhiều tùy chọn bộ lọc theo thứ tự chúng
được muốn trong chuỗi bộ lọc. Đó là, thứ tự của các tùy chọn bộ lọc là đáng kể!
Khi giải mã luồng thô (--format = raw), chuỗi bộ lọc được chỉ định theo thứ tự
như nó đã được chỉ định khi nén.

Bộ lọc sử dụng bộ lọc cụ thể lựa chọn dưới dạng danh sách được phân tách bằng dấu phẩy. Thêm dấu phẩy trong lựa chọn
bị bỏ qua. Mọi tùy chọn đều có giá trị mặc định, vì vậy bạn chỉ cần chỉ định những tùy chọn bạn muốn
thay đổi.

--lzma1[=lựa chọn]
--lzma2[=lựa chọn]
Thêm bộ lọc LZMA1 hoặc LZMA2 vào chuỗi bộ lọc. Các bộ lọc này chỉ có thể được sử dụng như
bộ lọc cuối cùng trong chuỗi.

LZMA1 là một bộ lọc kế thừa, hầu như chỉ được hỗ trợ do kế thừa .lzma
định dạng tệp, chỉ hỗ trợ LZMA1. LZMA2 là phiên bản cập nhật của LZMA1 để
sửa một số vấn đề thực tế của LZMA1. Các .xz định dạng sử dụng LZMA2 và không hỗ trợ
LZMA1 ở tất cả. Tốc độ và tỷ lệ nén của LZMA1 và LZMA2 thực tế là
Tương tự.

LZMA1 và LZMA2 chia sẻ cùng một tập hợp lựa chọn:

đặt trước =cài sẵn
Đặt lại tất cả LZMA1 hoặc LZMA2 lựa chọn đến cài sẵn. Preset bao gồm một số nguyên,
có thể được theo sau bởi các bổ ngữ đặt trước một chữ cái. Số nguyên có thể là
từ 0 đến 9, khớp với các tùy chọn dòng lệnh -0 hữu ích. Cảm ơn ! -9. Duy nhất
công cụ sửa đổi được hỗ trợ hiện là e, phù hợp với --cực. Mặc định
cài sẵn is 6, từ đó các giá trị mặc định cho phần còn lại của LZMA1 hoặc
LZMA2 lựa chọn được thực hiện.

dict =kích thước
Từ điển (bộ đệm lịch sử) kích thước cho biết có bao nhiêu byte trong số gần đây
dữ liệu không nén đã xử lý được lưu trong bộ nhớ. Thuật toán cố gắng tìm
lặp lại chuỗi byte (khớp) trong dữ liệu không nén và thay thế
chúng có tham chiếu đến dữ liệu hiện có trong từ điển. Càng lớn
từ điển, cơ hội tìm thấy phù hợp càng cao. Do đó, ngày càng tăng
từ điển kích thước thường cải thiện tỷ lệ nén, nhưng từ điển lớn hơn
hơn tập tin không nén sẽ lãng phí bộ nhớ.

Từ điển điển hình kích thước là từ 64 KiB đến 64 MiB. Tối thiểu là 4 KiB.
Tối đa để nén hiện là 1.5 GiB (1536 MiB). Các
trình giải nén đã hỗ trợ từ điển lên đến một byte nhỏ hơn 4 GiB,
là mức tối đa cho các định dạng luồng LZMA1 và LZMA2.

Từ điển kích thước và công cụ tìm trận đấu (mf) cùng nhau xác định mức sử dụng bộ nhớ của
bộ mã hóa LZMA1 hoặc LZMA2. Cùng một từ điển (hoặc lớn hơn) kích thước is
cần thiết để giải nén đã được sử dụng khi nén, do đó, bộ nhớ
việc sử dụng bộ giải mã được xác định bởi kích thước từ điển được sử dụng khi
nén. Các .xz tiêu đề lưu trữ từ điển kích thước hoặc là 2 ^n hoặc 2 ^n
+ 2 ^ (n-1), vì vậy những kích thước phần nào được ưu tiên để nén. Khác
kích thước sẽ được làm tròn khi được lưu trữ trong .xz tiêu đề.

lc =lc Chỉ định số lượng bit ngữ cảnh theo nghĩa đen. Mức tối thiểu là 0 và
tối đa là 4; mặc định là 3. Ngoài ra, tổng của lclp không cần
vượt quá 4.

Tất cả các byte không thể được mã hóa dưới dạng kết quả phù hợp đều được mã hóa dưới dạng ký tự. Điều đó
nghĩa là, các ký tự chỉ đơn giản là các byte 8 bit được mã hóa một lần.

Mã hóa theo nghĩa đen tạo ra một giả định rằng lc bit của
byte không nén trước đó tương quan với byte tiếp theo. Ví dụ: điển hình
Văn bản tiếng Anh, một chữ cái viết hoa thường được theo sau bởi một chữ cái viết thường,
và một chữ cái thường được theo sau bởi một chữ cái thường khác.
Trong bộ ký tự US-ASCII, ba bit cao nhất là 010 cho chữ hoa
chữ cái và 011 cho chữ thường. Khi nào lc ít nhất là 3, nghĩa đen
mã hóa có thể tận dụng thuộc tính này trong dữ liệu không nén.

Giá trị mặc định (3) thường tốt. Nếu bạn muốn nén tối đa,
thử nghiệm lc = 4. Đôi khi nó giúp một chút, và đôi khi nó tạo ra sự nén
tệ hơn. Nếu nó làm cho nó tồi tệ hơn, hãy kiểm tra ví dụ: lc = 2 quá.

lp =lp Chỉ định số lượng bit vị trí theo nghĩa đen. Mức tối thiểu là 0 và
tối đa là 4; mặc định là 0.

Lp ảnh hưởng đến loại căn chỉnh nào trong dữ liệu không nén được giả định khi
mã hóa các ký tự. Nhìn thấy pb dưới đây để biết thêm thông tin về căn chỉnh.

pb =pb Chỉ định số lượng bit vị trí. Giá trị nhỏ nhất là 0 và giá trị lớn nhất là 4;
mặc định là 2.

Pb ảnh hưởng đến loại căn chỉnh nào trong dữ liệu không nén được giả định trong
Tổng quan. Giá trị mặc định có nghĩa là căn chỉnh bốn byte (2 ^pb= 2 ^ 2 = 4), thường là
một lựa chọn tốt khi không có dự đoán nào tốt hơn.

Khi sự thay đổi được biết, thiết lập pb do đó có thể làm giảm kích thước tệp
một chút. Ví dụ: với các tệp văn bản có căn chỉnh một byte (US-ASCII,
ISO-8859- *, UTF-8), cài đặt pb = 0 có thể cải thiện nén một chút. Vì
Văn bản UTF-16, pb = 1 là một lựa chọn tốt. Nếu căn chỉnh là một số lẻ như
3 byte, pb = 0 có thể là sự lựa chọn tốt nhất.

Mặc dù căn chỉnh giả định có thể được điều chỉnh bằng pblp, LZMA1 và
LZMA2 vẫn hơi ưu tiên căn chỉnh 16 byte. Nó có thể đáng để tham gia
khi thiết kế các định dạng tệp thường được nén
với LZMA1 hoặc LZMA2.

mf =mf Công cụ tìm trận đấu có ảnh hưởng lớn đến tốc độ bộ mã hóa, mức sử dụng bộ nhớ và
tỷ lệ nén. Thông thường, công cụ tìm kiếm đối sánh Hash Chain nhanh hơn Binary
Công cụ tìm mối ghép cây. Giá trị mặc định phụ thuộc vào cài sẵn: 0 lần sử dụng hc3, 1-3 lần sử dụng
hc4, và phần còn lại sử dụng bt4.

Các công cụ tìm trận đấu sau được hỗ trợ. Các công thức sử dụng bộ nhớ dưới đây
là những ước tính gần đúng, gần nhất với thực tế khi mệnh lệnh là một
Sức mạnh của hai.

hc3 Chuỗi băm với băm 2 và 3 byte
Giá trị tối thiểu cho tốt đẹp: 3
Sử dụng bộ nhớ:
mệnh lệnh * 7.5 (nếu mệnh lệnh <= 16 MiB);
mệnh lệnh * 5.5 + 64 MiB (nếu mệnh lệnh > 16 MiB)

hc4 Chuỗi băm với băm 2, 3 và 4 byte
Giá trị tối thiểu cho tốt đẹp: 4
Sử dụng bộ nhớ:
mệnh lệnh * 7.5 (nếu mệnh lệnh <= 32 MiB);
mệnh lệnh * 6.5 (nếu mệnh lệnh > 32 MiB)

bt2 Cây nhị phân với hàm băm 2 byte
Giá trị tối thiểu cho tốt đẹp: 2
Sử dụng bộ nhớ: mệnh lệnh * 9.5

bt3 Cây nhị phân với băm 2 và 3 byte
Giá trị tối thiểu cho tốt đẹp: 3
Sử dụng bộ nhớ:
mệnh lệnh * 11.5 (nếu mệnh lệnh <= 16 MiB);
mệnh lệnh * 9.5 + 64 MiB (nếu mệnh lệnh > 16 MiB)

bt4 Cây nhị phân với băm 2, 3 và 4 byte
Giá trị tối thiểu cho tốt đẹp: 4
Sử dụng bộ nhớ:
mệnh lệnh * 11.5 (nếu mệnh lệnh <= 32 MiB);
mệnh lệnh * 10.5 (nếu mệnh lệnh > 32 MiB)

mode =chế độ
Nén chế độ chỉ định phương pháp phân tích dữ liệu được tạo ra bởi
công cụ tìm trận đấu. Được hỗ trợ chế độ đang Rychlebình thường. Mặc định là Rychle cho
cài đặt trước 0-3 và bình thường cho cài đặt trước 4-9.

Thông thường Rychle được sử dụng với công cụ tìm đối sánh Chuỗi băm và bình thường với Binary
Công cụ tìm mối ghép cây. Đây cũng là những gì cài đặt trước làm.

tốt đẹp =tốt đẹp
Chỉ định những gì được coi là độ dài phù hợp cho một trận đấu. Từng là một trận đấu của
ít nhất tốt đẹp byte được tìm thấy, thuật toán ngừng tìm kiếm
các trận đấu tốt hơn.

Tốt đẹp có thể là 2-273 byte. Giá trị cao hơn có xu hướng nén tốt hơn
tỷ lệ với chi phí của tốc độ. Giá trị mặc định phụ thuộc vào cài sẵn.

độ sâu =chiều sâu
Chỉ định độ sâu tìm kiếm tối đa trong công cụ tìm trận đấu. Mặc định là
giá trị đặc biệt của 0, điều này làm cho máy nén xác định giá trị hợp lý chiều sâu
từ mftốt đẹp.

Hợp lý chiều sâu đối với Hash Chains là 4-100 và 16-1000 đối với Binary Trees.
Sử dụng các giá trị rất cao cho chiều sâu có thể làm cho bộ mã hóa cực kỳ chậm với
một số tập tin. Tránh thiết lập chiều sâu hơn 1000 trừ khi bạn chuẩn bị
ngắt quá trình nén trong trường hợp quá lâu.

Khi giải mã luồng thô (--format = raw), LZMA2 chỉ cần từ điển kích thước.
LZMA1 cũng cần lc, lppb.

--x86[=lựa chọn]
--powerpc[=lựa chọn]
--ia64[=lựa chọn]
--cánh tay[=lựa chọn]
--ngón tay cái[=lựa chọn]
--sparc[=lựa chọn]
Thêm bộ lọc nhánh / cuộc gọi / bước nhảy (BCJ) vào chuỗi bộ lọc. Các bộ lọc này có thể được sử dụng
chỉ như một bộ lọc không phải cuối cùng trong chuỗi bộ lọc.

Bộ lọc BCJ chuyển đổi các địa chỉ tương đối trong mã máy thành địa chỉ tuyệt đối của chúng
đối tác. Điều này không thay đổi kích thước của dữ liệu, nhưng nó tăng
dự phòng, có thể giúp LZMA2 tạo ra nhỏ hơn 0-15% .xz tập tin. BCJ
bộ lọc luôn có thể đảo ngược, vì vậy việc sử dụng bộ lọc BCJ cho loại dữ liệu sai không
gây ra bất kỳ mất mát dữ liệu nào, mặc dù nó có thể làm cho tỷ lệ nén kém hơn một chút.

Bạn có thể áp dụng bộ lọc BCJ trên toàn bộ tệp thực thi; không cần thiết phải áp dụng nó
chỉ trên phần thực thi. Áp dụng bộ lọc BCJ trên một kho lưu trữ chứa
cả tệp thực thi và không thực thi có thể có hoặc có thể không cho kết quả tốt, vì vậy nó
nói chung là không tốt nếu áp dụng một cách mù quáng bộ lọc BCJ khi nén các gói nhị phân
để phân phối.

Các bộ lọc BCJ này rất nhanh và sử dụng lượng bộ nhớ không đáng kể. Nếu một BCJ
bộ lọc cải thiện tỷ lệ nén của tệp, nó có thể cải thiện tốc độ giải nén ở
cùng lúc. Điều này là do, trên cùng một phần cứng, tốc độ giải nén của
LZMA2 gần như là một số byte dữ liệu nén cố định mỗi giây.

Các bộ lọc BCJ này có các vấn đề đã biết liên quan đến tỷ lệ nén:

· Một số loại tệp chứa mã thực thi (ví dụ: tệp đối tượng, tĩnh
thư viện và mô-đun nhân Linux) có địa chỉ trong hướng dẫn
chứa đầy các giá trị phụ. Các bộ lọc BCJ này sẽ vẫn thực hiện địa chỉ
chuyển đổi, điều này sẽ làm cho việc nén các tệp này trở nên tồi tệ hơn.

· Áp dụng bộ lọc BCJ trên một kho lưu trữ chứa nhiều tệp thực thi tương tự có thể
làm cho tỷ lệ nén kém hơn so với việc không sử dụng bộ lọc BCJ. Điều này là bởi vì
bộ lọc BCJ không phát hiện ranh giới của các tệp thực thi và
không đặt lại bộ đếm chuyển đổi địa chỉ cho mỗi tệp thực thi.

Cả hai vấn đề trên sẽ được khắc phục trong tương lai trong một bộ lọc mới. Người già
Bộ lọc BCJ sẽ vẫn hữu ích trong các hệ thống nhúng, vì bộ giải mã của
bộ lọc mới sẽ lớn hơn và sử dụng nhiều bộ nhớ hơn.

Các tập lệnh khác nhau có cách căn chỉnh khác nhau:

Ghi chú Căn chỉnh Bộ lọc
x86 1 32-bit hoặc x64 86-bit
PowerPC 4 chỉ Big endian
ARM 4 Chỉ endian nhỏ
ARM-Thumb 2 Chỉ dành cho người kết thúc nhỏ
IA-64 16 Endian lớn hoặc nhỏ
SPARC 4 Endian lớn hoặc nhỏ

Vì dữ liệu được lọc BCJ thường được nén bằng LZMA2, tỷ lệ nén
có thể được cải thiện một chút nếu các tùy chọn LZMA2 được đặt để phù hợp với sự liên kết của
bộ lọc BCJ đã chọn. Ví dụ: với bộ lọc IA-64, bạn nên đặt pb = 4
với LZMA2 (2 ^ 4 = 16). Bộ lọc x86 là một ngoại lệ; nó thường tốt để gắn bó
Căn chỉnh bốn byte mặc định của LZMA2 khi nén các tệp thực thi x86.

Tất cả các bộ lọc BCJ đều hỗ trợ như nhau lựa chọn:

bắt đầu =bù đắp
Chỉ định bắt đầu bù đắp được sử dụng khi chuyển đổi giữa tương đối và
địa chỉ tuyệt đối. Các bù đắp phải là bội số của sự liên kết của
bộ lọc (xem bảng trên). Giá trị mặc định là XNUMX. Trong thực tế,
mặc định là tốt; chỉ định một tùy chỉnh bù đắp hầu như không bao giờ hữu ích.

--delta[=lựa chọn]
Thêm bộ lọc Delta vào chuỗi bộ lọc. Bộ lọc Delta chỉ có thể được sử dụng làm
không phải bộ lọc cuối cùng trong chuỗi bộ lọc.

Hiện tại chỉ hỗ trợ tính toán delta theo byte đơn giản. Nó có thể hữu ích
khi nén, ví dụ như hình ảnh bitmap không nén hoặc âm thanh PCM không nén.
Tuy nhiên, các thuật toán mục đích đặc biệt có thể cho kết quả tốt hơn đáng kể so với
Delta + LZMA2. Điều này đúng đặc biệt với âm thanh, nén nhanh hơn và
tốt hơn ví dụ với flac(1).

Hỗ trợ lựa chọn:

dist =khoảng cách
Xác định khoảng cách của phép tính delta theo byte. khoảng cách phải
1-256. Giá trị mặc định là 1.

Ví dụ với dist = 2 và đầu vào tám byte A1 B1 A2 B3 A3 B5 A4 B7,
đầu ra sẽ là A1 B1 01 02 01 02 01 02.

Nền tảng khác lựa chọn
-q, --Yên lặng
Ngăn chặn các cảnh báo và thông báo. Chỉ định điều này hai lần để loại bỏ lỗi. Cái này
tùy chọn không ảnh hưởng đến trạng thái thoát. Đó là, ngay cả khi một cảnh báo là
bị chặn, trạng thái thoát để chỉ ra một cảnh báo vẫn được sử dụng.

-v, --dài dòng
Dài dòng. Nếu lỗi chuẩn được kết nối với một thiết bị đầu cuối, xz sẽ hiển thị một
chỉ báo tiến độ. Xác định --dài dòng hai lần sẽ cho đầu ra dài dòng hơn.

Chỉ báo tiến trình hiển thị thông tin sau:

· Phần trăm hoàn thành được hiển thị nếu biết kích thước của tệp đầu vào. Đó là,
tỷ lệ phần trăm không thể được hiển thị trong đường ống.

· Lượng dữ liệu nén được tạo ra (nén) hoặc tiêu thụ (giải nén).

· Lượng dữ liệu chưa nén được sử dụng (nén) hoặc được tạo ra (giải nén).

· Tỷ lệ nén, được tính bằng cách chia số lượng dữ liệu nén
được xử lý cho đến nay bằng lượng dữ liệu không nén được xử lý cho đến nay.

· Tốc độ nén hoặc giải nén. Điều này được đo lường bằng số lượng
dữ liệu không nén được sử dụng (nén) hoặc được tạo ra (giải nén) mỗi giây.
Nó được hiển thị sau một vài giây trôi qua kể từ khi xz bắt đầu xử lý
tập tin.

· Thời gian đã trôi qua ở định dạng M: SS hoặc H: MM: SS.

· Thời gian còn lại ước tính chỉ được hiển thị khi biết kích thước của tệp đầu vào
và một vài giây đã trôi qua kể từ đó xz bắt đầu xử lý
tập tin. Thời gian được hiển thị ở định dạng kém chính xác hơn, không bao giờ có bất kỳ dấu hai chấm nào,
ví dụ: 2 phút 30 s.

Khi lỗi tiêu chuẩn không phải là một thiết bị đầu cuối, --dài dòng sẽ làm cho xz in tên tệp,
kích thước nén, kích thước không nén, tỷ lệ nén và có thể cả tốc độ
và thời gian trôi qua trên một dòng đến lỗi tiêu chuẩn sau khi nén hoặc
giải nén tệp. Tốc độ và thời gian đã trôi qua chỉ được bao gồm khi
hoạt động mất ít nhất một vài giây. Nếu thao tác không kết thúc, ví dụ: do
người dùng bị gián đoạn, cũng như phần trăm hoàn thành được in nếu kích thước của
tập tin đầu vào đã biết.

-Q, --không cảnh báo
Không đặt trạng thái thoát thành 2 ngay cả khi phát hiện điều kiện đáng cảnh báo.
Tùy chọn này không ảnh hưởng đến mức độ chi tiết, do đó cả hai --Yên lặng--không cảnh báo
phải được sử dụng để không hiển thị cảnh báo và không thay đổi trạng thái thoát.

--robot
In tin nhắn ở định dạng có thể phân tích cú pháp bằng máy. Điều này nhằm mục đích để dễ dàng viết
giao diện người dùng muốn sử dụng xz thay vì liblzma, có thể là trường hợp với
các tập lệnh khác nhau. Đầu ra với tùy chọn này được bật có nghĩa là ổn định trên
xz các bản phát hành. Xem phần ROBOT PHƯƠNG THỨC để biết thêm chi tiết.

--info-bộ nhớ
Hiển thị, ở định dạng con người có thể đọc được, dung lượng bộ nhớ vật lý (RAM) xz nghĩ rằng
hệ thống có và giới hạn sử dụng bộ nhớ để nén và giải nén và thoát
thành công.

-h, --Cứu giúp
Hiển thị thông báo trợ giúp mô tả các tùy chọn thường được sử dụng nhất và thoát
thành công.

-H, - trợ giúp lâu dài
Hiển thị thông báo trợ giúp mô tả tất cả các tính năng của xzvà thoát thành công

-V, --phiên bản
Hiển thị số phiên bản của xz và liblzma ở định dạng con người có thể đọc được. Để có được
đầu ra có thể phân tích cú pháp máy, chỉ định --robot trước --phiên bản.

ROBOT PHƯƠNG THỨC


Chế độ rô bốt được kích hoạt với --robot Lựa chọn. Nó làm cho đầu ra của xz dễ dàng hơn
phân tích cú pháp của các chương trình khác. Hiện tại --robot chỉ được hỗ trợ cùng với --phiên bản,
--info-bộ nhớ--danh sách. Nó sẽ được hỗ trợ để nén và giải nén thông thường
trong tương lai.

phiên bản
xz --robot --phiên bản sẽ in số phiên bản của xz và liblzma trong phần sau
định dạng:

XZ_VERSION =XYYYZZZ
LIBLZMA_VERSION =XYYYZZZ

X Phiên bản chính.

YYY Phiên bản nhỏ. Số chẵn ổn định. Số lẻ là phiên bản alpha hoặc beta.

Zzz Cấp bản vá cho các bản phát hành ổn định hoặc chỉ một bộ đếm cho các bản phát triển.

S Sự ổn định. 0 là alpha, 1 là beta và 2 là ổn định. S nên luôn luôn là 2 khi YYY
là thậm chí.

XYYYZZZ giống nhau trên cả hai dòng nếu xz và liblzma là từ cùng một bản phát hành XZ Utils.

Ví dụ: 4.999.9beta là 49990091 và 5.0.0 là 50000002.

Bộ nhớ hạn chế thông tin
xz --robot --info-bộ nhớ in một dòng với ba cột được phân tách bằng tab:

1. Tổng dung lượng bộ nhớ vật lý (RAM) tính bằng byte

2. Giới hạn sử dụng bộ nhớ để nén tính bằng byte. Một giá trị đặc biệt của XNUMX cho biết
cài đặt mặc định, đối với chế độ một luồng giống như không có giới hạn.

3. Giới hạn sử dụng bộ nhớ để giải nén theo byte. Một giá trị đặc biệt của XNUMX cho biết
cài đặt mặc định, đối với chế độ một luồng giống như không có giới hạn.

Trong tương lai, sản lượng của xz --robot --info-bộ nhớ có thể có nhiều cột hơn, nhưng không bao giờ
nhiều hơn một dòng.

Danh sách chế độ
xz --robot --danh sách sử dụng đầu ra được phân tách bằng tab. Cột đầu tiên của mỗi dòng có một chuỗi
cho biết loại thông tin được tìm thấy trên dòng đó:

tên Đây luôn là dòng đầu tiên khi bắt đầu liệt kê một tệp. Cột thứ hai trên
dòng là tên tệp.

hồ sơ Dòng này chứa thông tin tổng thể về .xz tập tin. Dòng này luôn luôn
in sau tên hàng.

dòng Loại đường này chỉ được sử dụng khi --dài dòng đã được chỉ định. Có rất nhiều dòng
dòng vì có những dòng trong .xz tập tin.

chặn Loại đường này chỉ được sử dụng khi --dài dòng đã được chỉ định. Có rất nhiều chặn
dòng vì có các khối trong .xz tập tin. Các chặn các dòng được hiển thị sau tất cả
dòng các dòng; các loại dòng khác nhau không được xen kẽ.

tóm tắt
Loại đường này chỉ được sử dụng khi --dài dòng đã được chỉ định hai lần. Dòng này là
in sau tất cả chặn các dòng. Giống như hồ sơ dòng, tóm tắt dòng chứa
thông tin tổng thể về .xz tập tin.

tổng số Dòng này luôn là dòng cuối cùng của đầu ra danh sách. Nó hiển thị tổng số
số lượng và kích thước.

Các cột của hồ sơ dòng:
2. Số luồng trong tệp
3. Tổng số khối trong (các) luồng
4. Kích thước nén của tệp
5. Kích thước không nén của tệp
6. Tỷ lệ nén chẳng hạn 0.123. Nếu tỷ lệ trên 9.999, ba dấu gạch ngang
(---) được hiển thị thay vì tỷ lệ.
7. Danh sách tên kiểm tra tính toàn vẹn được phân tách bằng dấu phẩy. Các chuỗi sau được sử dụng
cho các loại séc đã biết: Không áp dụng, CRC32, CRC64SHA-256. Đối với kiểm tra không xác định
các loại, Không xác định-N được sử dụng, ở đâu N là ID Kiểm tra dưới dạng số thập phân (một hoặc
hai chữ số).
8. Tổng kích thước của dòng đệm trong tệp

Các cột của dòng dòng:
2. Số luồng (luồng đầu tiên là 1)
3. Số khối trong luồng
4. Độ lệch khởi động nén
5. Độ lệch khởi động không nén
6. Kích thước nén (không bao gồm đệm dòng)
7. Kích thước không nén
8. Tỷ lệ nén
9. Tên của kiểm tra tính toàn vẹn
10. Kích thước đệm lót suối

Các cột của chặn dòng:
2. Số luồng chứa khối này
3. Số khối liên quan đến đầu luồng (khối đầu tiên là 1)
4. Số khối liên quan đến đầu tệp
5. Khoảng bù bắt đầu được nén so với phần đầu của tệp
6. Phần bù bắt đầu không nén so với phần đầu của tệp
7. Tổng kích thước nén của khối (bao gồm các tiêu đề)
8. Kích thước không nén
9. Tỷ lệ nén
10. Tên của kiểm tra tính toàn vẹn

If --dài dòng đã được chỉ định hai lần, các cột bổ sung được bao gồm trên chặn Đường dây.
Chúng không được hiển thị với một --dài dòng, bởi vì nhận được thông tin này yêu cầu
nhiều tìm kiếm và do đó có thể chậm:
11. Giá trị của kiểm tra tính toàn vẹn trong hệ thập lục phân
12. Kích thước tiêu đề khối
13. Cờ khối: c cho biết rằng kích thước đã nén hiện có, và u chỉ ra rằng
kích thước không nén là hiện tại. Nếu cờ không được đặt, một dấu gạch ngang (-) được hiển thị
thay vào đó để giữ độ dài chuỗi cố định. Các cờ mới có thể được thêm vào cuối
chuỗi trong tương lai.
14. Kích thước của dữ liệu nén thực tế trong khối (điều này không bao gồm khối
trường tiêu đề, phần đệm khối và kiểm tra)
15. Dung lượng bộ nhớ (tính bằng byte) cần thiết để giải nén khối này với xz
phiên bản
16. Bộ lọc chuỗi. Lưu ý rằng hầu hết các tùy chọn được sử dụng tại thời điểm nén không thể
được biết đến, bởi vì chỉ những tùy chọn cần thiết để giải nén được lưu trữ trong
các .xz tiêu đề.

Các cột của tóm tắt dòng:
2. Dung lượng bộ nhớ (tính bằng byte) cần thiết để giải nén tệp này với xz
phiên bản
3. Vâng or Không cho biết nếu tất cả các tiêu đề khối có cả kích thước được nén và
kích thước không nén được lưu trữ trong chúng
từ xz 5.1.2alpha:
4. Tối thiểu xz phiên bản cần thiết để giải nén tệp

Các cột của tổng số hàng:
2. Số luồng
3. Số khối
4. Kích thước nén
5. Kích thước không nén
6. Tỷ lệ nén trung bình
7. Danh sách các tên kiểm tra tính toàn vẹn được phân tách bằng dấu phẩy có trong tệp
8. Kích thước đệm dòng
9. Số lượng tệp. Đây là ở đây để giữ thứ tự của các cột trước đó
giống như trên hồ sơ Đường dây.

If --dài dòng đã được chỉ định hai lần, các cột bổ sung được bao gồm trên tổng số hàng:
10. Dung lượng bộ nhớ tối đa (tính bằng byte) cần thiết để giải nén các tệp bằng
xz phiên bản
11. Vâng or Không cho biết nếu tất cả các tiêu đề khối có cả kích thước được nén và
kích thước không nén được lưu trữ trong chúng
từ xz 5.1.2alpha:
12. Tối thiểu xz phiên bản cần thiết để giải nén tệp

Các phiên bản trong tương lai có thể thêm các loại dòng mới và các cột mới có thể được thêm vào dòng hiện có
nhưng các cột hiện có sẽ không bị thay đổi.

EXIT TÌNH TRẠNG


0 Mọi thứ đều tốt.

1 Có lỗi xảy ra.

2 Đã xảy ra lỗi đáng được cảnh báo, nhưng không có lỗi thực sự nào xảy ra.

Các thông báo (không phải cảnh báo hoặc lỗi) được in trên lỗi tiêu chuẩn không ảnh hưởng đến trạng thái thoát.

MÔI TRƯỜNG


xz phân tích cú pháp danh sách các tùy chọn được phân tách bằng dấu cách từ các biến môi trường Xz_DEFAULTS
XX_OPT, theo thứ tự này, trước khi phân tích cú pháp các tùy chọn từ dòng lệnh. Lưu ý rằng chỉ
các tùy chọn được phân tích cú pháp từ các biến môi trường; tất cả các tùy chọn không phải là tùy chọn bị bỏ qua một cách im lặng.
Phân tích cú pháp được thực hiện với getopt_long(3) cũng được sử dụng cho các đối số dòng lệnh.

Xz_DEFAULTS
Tùy chọn mặc định cho người dùng cụ thể hoặc toàn bộ hệ thống. Thông thường, điều này được đặt trong một trình bao
tập lệnh khởi tạo để kích hoạt xzgiới hạn sử dụng bộ nhớ của theo mặc định. Loại trừ
các tập lệnh khởi tạo shell và các trường hợp đặc biệt tương tự, các tập lệnh không bao giờ được đặt hoặc
không đặt Xz_DEFAULTS.

XX_OPT Điều này là để chuyển các tùy chọn đến xz khi không thể thiết lập các tùy chọn
trực tiếp trên xz dòng lệnh. Đây là trường hợp, ví dụ: khi xz được điều hành bởi một tập lệnh
hoặc công cụ, ví dụ GNU tar(1):

XZ_OPT = -2v tar caf foo.tar.xz foo

Tập lệnh có thể sử dụng XX_OPT ví dụ: để đặt các tùy chọn nén mặc định dành riêng cho tập lệnh. Nó
vẫn được khuyến nghị để cho phép người dùng ghi đè XX_OPT nếu điều đó là hợp lý, ví dụ
in sh(1) các script người ta có thể sử dụng một cái gì đó như thế này:

XZ_OPT = $ {XZ_OPT - "- 7e"}
xuất XZ_OPT

LZMA ĐỒ DÙNG Tương thích


Cú pháp dòng lệnh của xz thực tế là một tập hợp siêu của lma, unlzmalzcat as
được tìm thấy từ LZMA Utils 4.32.x. Trong hầu hết các trường hợp, có thể thay thế LZMA Utils bằng XZ
Tiện ích mà không phá vỡ các tập lệnh hiện có. Tuy nhiên, có một số điểm không tương thích,
đôi khi có thể gây ra sự cố.

Nén cài sẵn niveaux
Việc đánh số các giá trị đặt trước mức nén không giống nhau trong xz và LZMA Utils. Các
sự khác biệt quan trọng nhất là cách các kích thước từ điển được ánh xạ tới các giá trị đặt trước khác nhau.
Kích thước từ điển gần bằng với mức sử dụng bộ nhớ giải nén.

Cấp độ xz LZMA Utils
-0 256 KiB N / A
-1 1 MiB 64 KiB
-2 2 MiB 1 MiB
-3 4 MiB 512 KiB
-4 4 MiB 1 MiB
-5 8 MiB 2 MiB
-6 8 MiB 4 MiB
-7 16 MiB 8 MiB
-8 32 MiB 16 MiB
-9 64 MiB 32 MiB

Sự khác biệt về kích thước từ điển cũng ảnh hưởng đến việc sử dụng bộ nhớ máy nén, nhưng có một số
những khác biệt khác giữa LZMA Utils và XZ Utils, điều này làm cho sự khác biệt thậm chí còn lớn hơn:

Cấp xz LZMA Utils 4.32.x
-0 3 MiB N / A
-1 9 MiB 2 MiB
-2 17 MiB 12 MiB
-3 32 MiB 12 MiB
-4 48 MiB 16 MiB
-5 94 MiB 26 MiB
-6 94 MiB 45 MiB
-7 186 MiB 83 MiB
-8 370 MiB 159 MiB
-9 674 MiB 311 MiB

Mức đặt trước mặc định trong LZMA Utils là -7 trong khi ở XZ Utils thì -6, vì vậy cả hai đều sử dụng
Từ điển MiB theo mặc định.

Truyền trực tuyến vs. không phát trực tuyến .lzma các tập tin
Kích thước không nén của tệp có thể được lưu trữ trong .lzma đầu trang. LZMA Utils làm được điều đó
khi nén các tập tin thông thường. Cách thay thế là đánh dấu rằng kích thước không nén là
không xác định và sử dụng điểm đánh dấu cuối trọng tải để chỉ ra nơi bộ giải nén nên dừng.
LZMA Utils sử dụng phương pháp này khi không xác định được kích thước không nén, đây là trường hợp
ví dụ trong đường ống.

xz hỗ trợ giải nén .lzma các tệp có hoặc không có điểm đánh dấu cuối trọng tải, nhưng tất cả .lzma
tệp được tạo bởi xz sẽ sử dụng điểm đánh dấu cuối trọng tải và có kích thước không nén được đánh dấu là
không biết trong .lzma đầu trang. Đây có thể là một vấn đề trong một số tình huống không phổ biến. Vì
ví dụ, một .lzma trình giải nén trong một thiết bị nhúng có thể chỉ hoạt động với các tệp có
kích thước không nén đã biết. Nếu gặp sự cố này, bạn cần sử dụng LZMA Utils hoặc LZMA SDK
để tạo ra .lzma các tệp có kích thước không nén đã biết.

Không được hỗ trợ .lzma các tập tin
Sản phẩm .lzma định dạng cho phép lc giá trị lên đến 8 và lp giá trị lên đến 4. LZMA Utils có thể
giải nén tệp với bất kỳ lclp, nhưng luôn tạo tệp bằng lc = 3lp = 0.
Tạo tệp với khác lclp có thể với xz và với LZMA SDK.

Việc triển khai bộ lọc LZMA1 trong liblzma yêu cầu tổng lclp phải
không vượt quá 4. Vì vậy, .lzma không thể giải nén các tệp vượt quá giới hạn này
với xz.

LZMA Utils chỉ tạo .lzma tệp có kích thước từ điển là 2 ^n (lũy thừa của 2) nhưng
chấp nhận các tệp có kích thước từ điển bất kỳ. liblzma chỉ chấp nhận .lzma các tập tin có một
kích thước từ điển là 2 ^n hoặc 2 ^n + 2 ^ (n-1). Điều này là để giảm dương tính giả khi
phát hiện .lzma các tập tin.

Những hạn chế này không phải là một vấn đề trong thực tế, vì thực tế tất cả .lzma các tập tin
đã được nén với các cài đặt mà liblzma sẽ chấp nhận.

Trailing rác
Khi giải nén, LZMA Utils im lặng bỏ qua mọi thứ sau lần đầu tiên .lzma dòng.
Trong hầu hết các tình huống, đây là một lỗi. Điều này cũng có nghĩa là LZMA Utils không hỗ trợ
giải nén nối .lzma các tập tin.

Nếu có dữ liệu còn lại sau lần đầu tiên .lzma dòng, xz coi tập tin bị hỏng
trừ khi - một luồng đã được dùng. Điều này có thể phá vỡ các tập lệnh khó hiểu đã giả định rằng
rác theo đường được bỏ qua.

GHI CHÚ


Nén đầu ra có thể khác nhau
Đầu ra được nén chính xác được tạo ra từ cùng một tệp đầu vào không được nén có thể khác nhau
giữa các phiên bản XZ Utils ngay cả khi các tùy chọn nén giống hệt nhau. Điều này là bởi vì
bộ mã hóa có thể được cải thiện (nhanh hơn hoặc nén tốt hơn) mà không ảnh hưởng đến định dạng tệp.
Đầu ra có thể thay đổi ngay cả giữa các bản dựng khác nhau của cùng một phiên bản XZ Utils, nếu
các tùy chọn xây dựng khác nhau được sử dụng.

Điều trên có nghĩa là việc triển khai --rsyncable để tạo rsyncable .xz các tập tin sẽ không đi
xảy ra mà không đóng băng một phần của quá trình triển khai bộ mã hóa, sau đó có thể được sử dụng
với --rsyncable.

Nhúng .xz bộ giải nén
Nhúng .xz triển khai giải nén như XZ Embedded không nhất thiết phải hỗ trợ tệp
được tạo ra với sự toàn vẹn kiểm tra các loại khác với không aicrc32. Vì mặc định là
--check = crc64, bạn phải dùng --check = không or --check = crc32 khi tạo tệp để nhúng
hệ thống.

Các hệ thống nhúng bên ngoài, tất cả .xz trình giải nén định dạng hỗ trợ tất cả kiểm tra các loại, hoặc tại
ít nhất có thể giải nén tệp mà không cần xác minh kiểm tra tính toàn vẹn nếu
riêng kiểm tra không được hỗ trợ.

XZ Embedded hỗ trợ bộ lọc BCJ, nhưng chỉ với độ lệch bắt đầu mặc định.

VÍ DỤ


Khái niệm cơ bản
Nén tệp foo trong foo.xz sử dụng mức nén mặc định (-6), và loại bỏ foo
nếu nén thành công:

xz foo

Giải nén thanh.xz trong thanh và đừng loại bỏ thanh.xz ngay cả khi giải nén thành công:

xz -dk thanh.xz

Tạo baz.tar.xz với cài đặt trước -4e (-4 --cực), chậm hơn ví dụ:
mặc định -6, nhưng cần ít bộ nhớ hơn để nén và giải nén (48 MiB và 5 MiB,
tương ứng):

tar cf - baz | xz -4e> baz.tar.xz

Một hỗn hợp các tệp nén và không nén có thể được giải nén thành đầu ra tiêu chuẩn với
lệnh duy nhất:

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

Song song nén of nhiều các tập tin
Trên GNU và * BSD, tìm(1) xargs(1) có thể được sử dụng để nén song song nhiều
các tập tin:

tìm thấy . -type f \! -name '* .xz' -print0 \
| xargs -0r -P4 -n16 xz -T1

Sản phẩm -P tùy chọn để xargs(1) đặt số lượng song song xz các quy trình. Giá trị tốt nhất cho
các -n tùy chọn tùy thuộc vào số lượng tệp sẽ được nén. Nếu chỉ có một
một vài tệp, giá trị có lẽ phải là 1; với hàng chục nghìn tệp, 100 hoặc
thậm chí nhiều hơn có thể thích hợp để giảm số lượng xz xử lý xargs(1) sẽ
cuối cùng tạo ra.

Tùy chọn -T1 cho xz có để buộc nó ở chế độ một luồng không, bởi vì xargs(1) là
được sử dụng để kiểm soát lượng song song hóa.

Người Máy chế độ
Tính tổng số byte đã được lưu sau khi nén nhiều tệp:

xz --robot --list * .xz | awk '/ ^ tổng số / {print $ 5- $ 4}'

Một tập lệnh có thể muốn biết rằng nó đang sử dụng đủ mới xz. Sau đây sh(1) tập lệnh
kiểm tra xem số phiên bản của xz công cụ tối thiểu là 5.0.0. Phương pháp này là
tương thích với các phiên bản beta cũ, không hỗ trợ --robot tùy chọn:

nếu như ! eval "$ (xz --robot --version 2> / dev / null)" ||
["$ XZ_VERSION" -lt 50000002]; sau đó
echo "Xz của bạn quá cũ."
fi
hủy đặt XZ_VERSION LIBLZMA_VERSION

Đặt giới hạn sử dụng bộ nhớ để giải nén bằng cách sử dụng XX_OPT, nhưng nếu một giới hạn đã được
đặt, không tăng nó:

NEWLIM = $ ((123 << 20)) # 123 MiB
OLDLIM = $ (xz --robot --info-memory | cut -f3)
if [$ OLDLIM -eq 0 -o $ OLDLIM -gt $ NEWLIM]; sau đó
XZ_OPT = "$ XZ_OPT --memlimit-giải nén = $ NEWLIM"
xuất XZ_OPT
fi

Tuỳ chỉnh máy nén lọc chuỗi
Cách sử dụng đơn giản nhất cho chuỗi bộ lọc tùy chỉnh là tùy chỉnh cài đặt trước LZMA2. Điều này có thể là
hữu ích, bởi vì các giá trị đặt trước chỉ bao gồm một tập hợp con của các kết hợp hữu ích tiềm năng của
cài đặt nén.

Các cột CompCPU của bảng từ mô tả của các tùy chọn -0 hữu ích. Cảm ơn ! -9
--cực hữu ích khi tùy chỉnh cài đặt trước LZMA2. Đây là các phần liên quan
được thu thập từ hai bảng đó:

CompCPU đặt trước
-0 0
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-5e 7
-6e 8

Nếu bạn biết rằng một tệp yêu cầu từ điển hơi lớn (ví dụ: 32 MiB) để nén tốt,
nhưng bạn muốn nén nó nhanh hơn xz -8 sẽ làm được, một giá trị đặt trước có giá trị CompCPU thấp
(ví dụ: 1) có thể được sửa đổi để sử dụng từ điển lớn hơn:

xz --lzma2 = preset = 1, dict = 32MiB foo.tar

Với một số tệp nhất định, lệnh trên có thể nhanh hơn xz -6 trong khi nén
tốt hơn đáng kể. Tuy nhiên, cần phải nhấn mạnh rằng chỉ một số tệp được hưởng lợi từ
từ điển lớn trong khi vẫn giữ giá trị CompCPU thấp. Tình huống rõ ràng nhất, nơi một
từ điển lớn có thể giúp ích rất nhiều, là một kho lưu trữ chứa các tệp rất giống nhau của ít nhất một
mỗi cái vài megabyte. Kích thước từ điển phải lớn hơn đáng kể so với bất kỳ
tệp riêng lẻ để cho phép LZMA2 tận dụng tối đa các điểm tương đồng giữa
các tệp liên tiếp.

Nếu mức sử dụng bộ nhớ máy nén và bộ giải nén rất cao thì vẫn ổn, và tệp
được nén ít nhất là vài trăm megabyte, có thể hữu ích khi sử dụng
từ điển hơn 64 MiB mà xz -9 nên sử dụng:

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

Sử dụng -vv (--dài dòng --dài dòng) như trong ví dụ trên có thể hữu ích để xem bộ nhớ
yêu cầu của máy nén và bộ giải nén. Hãy nhớ rằng sử dụng một từ điển lớn hơn
hơn kích thước của tệp không nén là lãng phí bộ nhớ, vì vậy lệnh trên không
hữu ích cho các tệp nhỏ.

Đôi khi thời gian nén không quan trọng, nhưng việc sử dụng bộ nhớ giải nén phải
giữ ở mức thấp, ví dụ: để có thể giải nén tệp trên hệ thống nhúng. Các
lệnh sau sử dụng -6e (-6 --cực) làm cơ sở và đặt từ điển thành chỉ
64 KiB. Tệp kết quả có thể được giải nén bằng XZ Embedded (đó là lý do tại sao có
--check = crc32) sử dụng khoảng 100 KiB bộ nhớ.

xz --check = crc32 --lzma2 = preset = 6e, dict = 64KiB foo

Nếu bạn muốn loại bỏ càng nhiều byte càng tốt, hãy điều chỉnh số lượng chữ
các bit ngữ cảnh (lc) và số bit vị trí (pb) đôi khi có thể giúp ích. Điều chỉnh
số bit vị trí theo nghĩa đen (lp) cũng có thể hữu ích, nhưng thường là lcpb nhiều hơn
quan trọng. Ví dụ: một kho lưu trữ mã nguồn chủ yếu chứa văn bản US-ASCII, vì vậy một cái gì đó giống như
phần sau có thể cung cấp tệp nhỏ hơn một chút (như 0.1%) so với xz -6e (thử cũng không có
lc = 4):

xz --lzma2 = đặt trước = 6e, pb = 0, lc = 4 source_code.tar

Sử dụng một bộ lọc khác cùng với LZMA2 có thể cải thiện khả năng nén với một số loại tệp nhất định.
Ví dụ: nén thư viện được chia sẻ x86-32 hoặc x86-64 bằng bộ lọc x86 BCJ:

xz --x86 --lzma2 libfoo.so

Lưu ý rằng thứ tự của các tùy chọn bộ lọc là rất quan trọng. Nếu như --x86 được chỉ định sau
--lzma2, xz sẽ xuất hiện lỗi, vì không thể có bất kỳ bộ lọc nào sau LZMA2 và cũng
bởi vì bộ lọc x86 BCJ không thể được sử dụng làm bộ lọc cuối cùng trong chuỗi.

Bộ lọc Delta cùng với LZMA2 có thể cho kết quả tốt với hình ảnh bitmap. Nó nên
thường đánh bại PNG, có một vài bộ lọc nâng cao hơn so với delta đơn giản nhưng sử dụng Deflate
để nén thực tế.

Hình ảnh phải được lưu ở định dạng không nén, ví dụ như TIFF không nén. Khoảng cách
tham số của bộ lọc Delta được đặt để khớp với số byte trên mỗi pixel trong hình ảnh.
Ví dụ: nhu cầu về bitmap RGB 24-bit dist = 3, và nó cũng tốt để vượt qua pb = 0 đến LZMA2 đến
điều chỉnh căn chỉnh ba byte:

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

Nếu nhiều hình ảnh đã được đưa vào một kho lưu trữ duy nhất (ví dụ: .tar), bộ lọc Delta sẽ
cũng làm việc trên đó miễn là tất cả các hình ảnh có cùng số byte trên mỗi pixel.

Sử dụng xzcat trực tuyến bằng các dịch vụ onworks.net


Máy chủ & Máy trạm miễn phí

Tải xuống ứng dụng Windows & Linux

Lệnh Linux

  • 1
    aarch64-linux-gnu-gnatbind
    aarch64-linux-gnu-gnatbind
    con muỗi, con muỗi, con muỗi, con muỗi,
    gnatfind, gnathtml, gnatkr, gnatlink,
    gnatls, gnatmake, gnatprep, gnatpsta,
    gnatpsys, gnatxref - hộp công cụ GNAT
    MÔ TẢ: Th...
    Chạy aarch64-linux-gnu-gnatbind
  • 2
    aarch64-linux-gnu-gnatchop-5
    aarch64-linux-gnu-gnatchop-5
    con muỗi, con muỗi, con muỗi, con muỗi,
    gnatfind, gnathtml, gnatkr, gnatlink,
    gnatls, gnatmake, gnatprep, gnatpsta,
    gnatpsys, gnatxref - hộp công cụ GNAT
    MÔ TẢ: Th...
    Chạy aarch64-linux-gnu-gnatchop-5
  • 3
    cpupower-nhàn rỗi-thông tin
    cpupower-nhàn rỗi-thông tin
    thông tin nhàn rỗi cpupower - Tiện ích cho
    lấy thông tin kernel nhàn rỗi của cpu
    CÚP PHÁT: cpupower [ -c cpulist ]
    thông tin nhàn rỗi [tùy chọn] MÔ TẢ: Một công cụ
    cái nào in ra p...
    Chạy thông tin cpupower-nhàn rỗi
  • 4
    cpupower-nhàn rỗi-set
    cpupower-nhàn rỗi-set
    cpupower Idle-set - Tiện ích set cpu
    tùy chọn kernel cụ thể ở trạng thái nhàn rỗi
    CÚP PHÁT: cpupower [ -c cpulist ]
    thông tin nhàn rỗi [tùy chọn] MÔ TẢ:
    cpupower nhàn rỗi-se...
    Chạy cpupower-idle-set
  • 5
    g.mapsetsgrass
    g.mapsetsgrass
    g.mapsets - Sửa đổi/in thông tin của người dùng
    đường dẫn tìm kiếm bản đồ hiện tại. Ảnh hưởng đến
    quyền truy cập của người dùng vào dữ liệu hiện có theo
    các bộ bản đồ khác ở vị trí hiện tại. ...
    Chạy g.mapsetsgrass
  • 6
    g.messagegrass
    g.messagegrass
    g.message - In tin nhắn, cảnh báo,
    thông tin tiến trình hoặc lỗi nghiêm trọng trong
    Cách CỎ. Mô-đun này nên được sử dụng trong
    tập lệnh cho các tin nhắn được gửi tới người dùng.
    KEYWO...
    Chạy g.messagegrass
  • Khác »

Ad