EnglishFrenchSpanyol

Ad


Favicon OnWorks

xzcat - Dalam talian di Awan

Jalankan xzcat dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah arahan xzcat yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


xz, unxz, xzcat, lzma, unlzma, lzcat - Mampatkan atau nyahmampat fail .xz dan .lzma

SINOPSIS


xz [pilihan]... [fail]...

unxz adalah bersamaan dengan xz --nyahmampat.
xzcat adalah bersamaan dengan xz --nyahmampat --stdout.
lzma adalah bersamaan dengan xz --format=lzma.
unlzma adalah bersamaan dengan xz --format=lzma --nyahmampat.
lzcat adalah bersamaan dengan xz --format=lzma --nyahmampat --stdout.

Apabila menulis skrip yang perlu menyahmampat fail, adalah disyorkan untuk sentiasa menggunakan fail
nama xz dengan hujah yang sesuai (xz -d or xz -dc) bukannya nama unxz and xzcat.

DESCRIPTION


xz ialah alat pemampatan data tujuan umum dengan sintaks baris arahan yang serupa dengan gzip(1)
and bzip2(1). Format fail asli ialah .xz format, tetapi warisan .lzma format yang digunakan
oleh LZMA Utils dan aliran termampat mentah tanpa pengepala format bekas juga
disokong.

xz memampatkan atau menyahmampat setiap satu fail mengikut mod operasi yang dipilih. Jika tidak
fail diberi atau fail is -, xz membaca daripada input standard dan menulis data yang diproses
kepada keluaran standard. xz akan menolak (paparkan ralat dan langkau fail) untuk menulis
data dimampatkan kepada output standard jika ia adalah terminal. Begitu juga, xz akan enggan membaca
data dimampatkan daripada input standard jika ia adalah terminal.

Kecuali --stdout dinyatakan, fail selain daripada - ditulis ke fail baru yang namanya
diperoleh daripada sumber fail nama:

· Apabila memampatkan, akhiran format fail sasaran (.xz or .lzma) dilampirkan pada
nama fail sumber untuk mendapatkan nama fail sasaran.

· Apabila nyahmampat, .xz or .lzma akhiran dialih keluar daripada nama fail untuk mendapatkan
nama fail sasaran. xz juga mengenali akhiran .txz and .tlz, dan menggantikannya dengan
yang .tar akhiran.

Jika fail sasaran sudah wujud, ralat dipaparkan dan fail fail dilangkau.

Melainkan menulis kepada output standard, xz akan memaparkan amaran dan melangkau fail jika ada
perkara berikut berlaku:

· File bukan fail biasa. Pautan simbolik tidak diikuti, dan oleh itu ia tidak diikuti
dianggap sebagai fail biasa.

· File mempunyai lebih daripada satu pautan keras.

· File mempunyai set setuid, setgid atau sticky bit.

· Mod operasi ditetapkan untuk memampatkan dan fail sudah mempunyai akhiran sasaran
format fail (.xz or .txz apabila memampatkan ke .xz format, dan .lzma or .tlz apabila
memampatkan ke .lzma format).

· Mod operasi ditetapkan untuk nyahmampat dan fail tidak mempunyai akhiran mana-mana
format fail yang disokong (.xz, .txz, .lzma, Atau .tlz).

Selepas berjaya memampatkan atau menyahmampat fail, xz menyalin pemilik, kumpulan,
kebenaran, masa akses dan masa pengubahsuaian daripada sumber fail ke fail sasaran.
Jika penyalinan kumpulan gagal, kebenaran diubah suai supaya fail sasaran tidak
menjadi boleh diakses oleh pengguna yang tidak mempunyai kebenaran untuk mengakses sumber fail. xz
tidak menyokong penyalinan metadata lain seperti senarai kawalan akses atau atribut lanjutan
lagi.

Setelah fail sasaran telah berjaya ditutup, sumber fail dikeluarkan melainkan
--simpan telah dinyatakan. Sumber fail tidak pernah dikeluarkan jika output ditulis ke
keluaran standard.

Menghantar SIGINFO or SIGUSR1 kepada xz proses menjadikannya mencetak maklumat kemajuan ke
kesalahan biasa. Ini hanya mempunyai penggunaan terhad sejak apabila ralat standard adalah terminal, menggunakan
--verbose akan memaparkan penunjuk kemajuan yang mengemas kini secara automatik.

Memori penggunaan
Penggunaan memori bagi xz berbeza dari beberapa ratus kilobait hingga beberapa gigabait bergantung
pada tetapan mampatan. Tetapan yang digunakan semasa memampatkan fail menentukan
keperluan memori penyahmampat. Biasanya penyahmampat memerlukan 5% hingga 20% daripada
jumlah memori yang diperlukan oleh pemampat semasa mencipta fail. Sebagai contoh,
menyahmampat fail yang dibuat dengan xz -9 pada masa ini memerlukan 65 MiB memori. Namun begitu
mungkin untuk dimiliki .xz fail yang memerlukan beberapa gigabait memori untuk nyahmampat.

Terutamanya pengguna sistem lama mungkin mendapati kemungkinan penggunaan memori yang sangat besar
menjengkelkan. Untuk mengelakkan kejutan yang tidak selesa, xz mempunyai pengehad penggunaan memori terbina dalam,
yang dilumpuhkan secara lalai. Walaupun sesetengah sistem pengendalian menyediakan cara untuk mengehadkan
penggunaan memori proses, bergantung padanya tidak dianggap sebagai cukup fleksibel (cth menggunakan
had(1) untuk mengehadkan ingatan maya cenderung lumpuh mmap(2)).

Pengehad penggunaan memori boleh didayakan dengan pilihan baris arahan --memlimit=menghadkan.
Selalunya adalah lebih mudah untuk mendayakan pengehad secara lalai dengan menetapkan persekitaran
berubah-ubah XZ_DEFAULTS, contohnya XZ_DEFAULTS=--memlimit=150MiB. Ia adalah mungkin untuk menetapkan
had secara berasingan untuk pemampatan dan penyahmampatan dengan menggunakan --memlimit-compress=menghadkan and
--memlimit-decompress=menghadkan. Menggunakan dua pilihan ini di luar XZ_DEFAULTS jarang berguna
kerana satu larian xz tidak boleh melakukan kedua-dua mampatan dan penyahmampatan dan
--memlimit=menghadkan (Atau -M menghadkan) adalah lebih pendek untuk menaip pada baris arahan.

Jika melebihi had penggunaan memori yang ditentukan semasa menyahmampat, xz akan memaparkan sebuah
ralat dan menyahmampat fail akan gagal. Jika melebihi had semasa memampatkan, xz
akan cuba mengecilkan tetapan supaya had tidak lagi dilampaui (kecuali apabila
menggunakan --format=mentah or --tidak-sesuaikan). Dengan cara ini operasi tidak akan gagal melainkan hadnya
sangat kecil. Penskalaan tetapan dilakukan dalam langkah yang tidak sepadan dengan pemampatan
pratetap tahap, contohnya jika had hanya kurang sedikit daripada jumlah yang diperlukan xz -9,
tetapan akan diperkecilkan sedikit sahaja, bukan sehingga ke xz -8.

Gabungan and padding bersama .xz fail
Ia adalah mungkin untuk menggabungkan .xz fail seperti sedia ada. xz akan menyahmampat fail tersebut seolah-olah mereka
adalah seorang bujang .xz fail.

Adalah mungkin untuk memasukkan padding di antara bahagian bercantum atau selepas bahagian terakhir.
Pelapik mesti terdiri daripada bait nol dan saiz pelapik mestilah gandaan
empat bait. Ini boleh berguna contohnya jika .xz fail disimpan pada medium yang mengukur
saiz fail dalam blok 512-bait.

Penggabungan dan pelapik tidak dibenarkan dengan .lzma fail atau aliran mentah.

PILIHAN


Integer akhiran and khas nilai
Di kebanyakan tempat di mana hujah integer dijangka, akhiran pilihan disokong
dengan mudah menunjukkan integer besar. Mesti tiada ruang antara integer dan
akhiran.

KiB Darabkan integer dengan 1,024 (2^10). Ki, k, kB, K, dan KB diterima sebagai
sinonim untuk KiB.

Eb Darabkan integer dengan 1,048,576 (2^20). Mi, m, M, dan MB diterima sebagai
sinonim untuk Eb.

GiB Darabkan integer dengan 1,073,741,824 (2^30). Gi, g, G, dan GB diterima sebagai
sinonim untuk GiB.

Nilai istimewa maks boleh digunakan untuk menunjukkan nilai integer maksimum yang disokong oleh
pilihan.

Operasi mod
Jika berbilang pilihan mod operasi diberikan, yang terakhir akan berkuat kuasa.

-z, --mampatkan
Memampatkan. Ini ialah mod operasi lalai apabila tiada pilihan mod operasi
ditentukan dan tiada mod operasi lain tersirat daripada nama arahan (untuk
contohnya, unxz bererti --nyahmampat).

-d, --nyahmampat, --nyahmampatkan
Nyahmampat.

-t, --ujian
Uji integriti termampat fail. Pilihan ini bersamaan dengan --nyahmampat
--stdout kecuali data yang dinyahmampat dibuang dan bukannya ditulis kepada
keluaran standard. Tiada fail dibuat atau dialih keluar.

-l, --senarai
Cetak maklumat tentang dimampatkan fail. Tiada keluaran tidak termampat dihasilkan, dan
tiada fail dibuat atau dialih keluar. Dalam mod senarai, program tidak boleh membaca
data dimampatkan daripada input standard atau daripada sumber lain yang tidak boleh dicari.

Penyenaraian lalai menunjukkan maklumat asas tentang fail, satu fail setiap baris. Untuk mendapatkan
maklumat yang lebih terperinci, gunakan juga --verbose pilihan. Untuk lebih banyak lagi
maklumat, gunakan --verbose dua kali, tetapi ambil perhatian bahawa ini mungkin lambat, kerana mendapat
semua maklumat tambahan memerlukan banyak pencarian. Lebar keluaran verbose melebihi
80 aksara, jadi memaipkan output ke cth kurang -S mungkin mudah jika
terminal tidak cukup lebar.

Keluaran yang tepat mungkin berbeza antara xz versi dan tempat yang berbeza. Untuk mesin-
output boleh dibaca, --robot --senarai sepatutnya digunakan.

Operasi pengubah
-k, --simpan
Jangan padamkan fail input.

-f, - kekuatan
Pilihan ini mempunyai beberapa kesan:

· Jika fail sasaran sudah wujud, padamkannya sebelum memampatkan atau
penyahmampatan.

· Mampatkan atau nyahmampat walaupun input adalah pautan simbolik kepada fail biasa,
mempunyai lebih daripada satu pautan keras, atau mempunyai set setuid, setgid atau sticky bit. The
bit setuid, setgid dan sticky tidak disalin ke fail sasaran.

· Apabila digunakan dengan --nyahmampat --stdout and xz tidak dapat mengenali jenis
fail sumber, salin fail sumber seperti pada output standard. Ini membenarkan xzcat
- kekuatan untuk digunakan seperti kucing(1) untuk fail yang belum dimampatkan xz.
Perhatikan bahawa pada masa hadapan, xz mungkin menyokong format fail termampat baharu, yang mungkin
membuat xz nyahmampat lebih banyak jenis fail dan bukannya menyalinnya seperti yang biasa
output. --format=format boleh digunakan untuk menyekat xz untuk nyahmampat hanya satu
format fail.

-c, --stdout, --to-stdout
Tulis data yang dimampatkan atau dinyahmampat kepada output standard dan bukannya fail.
Ini bermakna --simpan.

--strim tunggal
Nyahmampat hanya yang pertama .xz strim, dan secara senyap mengabaikan kemungkinan baki input
data mengikuti aliran. Biasanya sampah mengekor itu membuat xz paparan an
kesilapan.

xz tidak pernah menyahmampat lebih daripada satu aliran daripada .lzma fail atau aliran mentah, tetapi
pilihan ini masih membuat xz abaikan data jejak yang mungkin selepas .lzma fail
atau aliran mentah.

Pilihan ini tidak mempunyai kesan jika mod operasi tidak --nyahmampat or --ujian.

--tiada-jarang
Lumpuhkan penciptaan fail jarang. Secara lalai, jika menyahmampat menjadi biasa
fail, xz cuba membuat fail jarang jika data yang dinyahmampat mengandungi panjang
urutan sifar binari. Ia juga berfungsi apabila menulis kepada output standard selama
kerana output standard disambungkan ke fail biasa dan syarat tambahan tertentu
dipenuhi untuk menjadikannya selamat. Mencipta fail yang jarang boleh menjimatkan ruang cakera dan mempercepatkan
penyahmampatan dengan mengurangkan jumlah I/O cakera.

-S .suf, --akhiran=.suf
Apabila memampatkan, gunakan .suf sebagai akhiran untuk fail sasaran dan bukannya .xz or
.lzma. Jika tidak menulis kepada output standard dan fail sumber sudah mempunyai
akhiran .suf, amaran dipaparkan dan fail dilangkau.

Apabila menyahmampat, kenali fail dengan akhiran .suf sebagai tambahan kepada fail dengan
yang .xz, .txz, .lzma, Atau .tlz akhiran. Jika fail sumber mempunyai akhiran .suf, yang
akhiran dialih keluar untuk mendapatkan nama fail sasaran.

Apabila memampatkan atau menyahmampat aliran mentah (--format=mentah), akhiran mestilah
sentiasa ditentukan melainkan menulis kepada output standard, kerana tiada lalai
akhiran untuk aliran mentah.

--fail[=fail]
Baca nama fail untuk diproses fail; sekiranya fail ditinggalkan, nama fail dibaca
daripada input standard. Nama fail mesti ditamatkan dengan aksara baris baharu. A
sengkang (-) diambil sebagai nama fail biasa; ia tidak bermakna input standard. Jika
nama fail diberikan juga sebagai argumen baris arahan, ia diproses sebelum
nama fail dibaca daripada fail.

--files0[=fail]
Ini sama dengan --fail[=fail] kecuali setiap nama fail mesti ditamatkan
dengan watak nol.

Asas fail format and mampatan pilihan
-F format, --format=format
Nyatakan fail format untuk memampatkan atau nyahmampat:

auto Ini adalah lalai. Apabila memampatkan, auto adalah bersamaan dengan xz. Apabila
menyahmampat, format fail input dikesan secara automatik. Catatan
bahawa aliran mentah (dicipta dengan --format=mentah) tidak boleh dikesan secara automatik.

xz Mampatkan ke .xz format fail, atau terima sahaja .xz fail apabila
penyahmampatan.

lzma, sahaja
Memampatkan kepada legasi .lzma format fail, atau terima sahaja .lzma fail apabila
penyahmampatan. Nama alternatif sahaja disediakan untuk ke belakang
keserasian dengan LZMA Utils.

mentah Mampatkan atau nyahmampatkan aliran mentah (tiada pengepala). Ini dimaksudkan untuk
pengguna lanjutan sahaja. Untuk menyahkod aliran mentah, anda perlu menggunakan --format=mentah and
nyatakan secara eksplisit rantai penapis, yang biasanya akan disimpan
dalam pengepala kontena.

-C menyemak, --semak=menyemak
Nyatakan jenis pemeriksaan integriti. Cek dikira daripada
data yang tidak dimampatkan dan disimpan dalam .xz fail. Pilihan ini mempunyai kesan hanya apabila
memampatkan ke dalam .xz format; yang .lzma format tidak menyokong semakan integriti.
Semakan integriti (jika ada) disahkan apabila .xz fail dinyahmampat.

Disokong menyemak jenis:

tiada Jangan mengira semakan integriti sama sekali. Ini biasanya idea yang tidak baik.
Ini boleh berguna apabila integriti data disahkan dengan cara lain
anyway.

crc32 Kira CRC32 menggunakan polinomial daripada IEEE-802.3 (Ethernet).

crc64 Kira CRC64 menggunakan polinomial daripada ECMA-182. Ini adalah lalai,
kerana ia lebih baik sedikit daripada CRC32 dalam mengesan fail yang rosak dan
perbezaan kelajuan boleh diabaikan.

sha256 Kira SHA-256. Ini agak perlahan daripada CRC32 dan CRC64.

Integriti .xz pengepala sentiasa disahkan dengan CRC32. Tidak mungkin
menukar atau melumpuhkannya.

-0 ... -9
Pilih tahap pratetap mampatan. Lalainya ialah -6. Jika berbilang tahap pratetap
ditentukan, yang terakhir berkuat kuasa. Jika rantai penapis tersuai sudah ada
ditentukan, menetapkan tahap pratetap mampatan mengosongkan rantai penapis tersuai.

Perbezaan antara pratetap adalah lebih ketara daripada dengan gzip(1) dan
bzip2(1). Tetapan mampatan yang dipilih menentukan keperluan memori bagi
penyahmampat, dengan itu menggunakan tahap pratetap yang terlalu tinggi mungkin menyusahkan
nyahmampat fail pada sistem lama dengan sedikit RAM. Secara khusus, ia tidak a
baik idea kepada secara membuta tuli penggunaan -9 Untuk semua seperti yang sering berlaku gzip(1) dan
bzip2(1).

-0 ... -3
Ini adalah pratetap yang agak pantas. -0 kadangkala lebih cepat daripada gzip -9 manakala
memampatkan lebih baik. Yang lebih tinggi selalunya mempunyai kelajuan yang setanding dengannya
bzip2(1) dengan nisbah mampatan yang setanding atau lebih baik, walaupun hasilnya
banyak bergantung pada jenis data yang dimampatkan.

-4 ... -6
Mampatan yang baik hingga sangat baik sambil mengekalkan penggunaan memori penyahmampat
munasabah walaupun untuk sistem lama. -6 ialah lalai, yang biasanya bagus
pilihan cth untuk mengedarkan fail yang perlu dinyahmampat walaupun pada
sistem dengan hanya 16 MiB RAM. (-5e or -6e mungkin patut dipertimbangkan juga.
Lihat --melampau.)

-7 ... -9
Ini adalah seperti -6 tetapi dengan memori pemampat dan penyahmampat yang lebih tinggi
keperluan. Ini hanya berguna apabila memampatkan fail yang lebih besar daripada
8 MiB, 16 MiB dan 32 MiB, masing-masing.

Pada perkakasan yang sama, kelajuan penyahmampatan adalah lebih kurang bilangan tetap
bait data termampat sesaat. Dengan kata lain, lebih baik pemampatan,
semakin cepat penyahmampatan biasanya akan berlaku. Ini juga bermakna bahawa jumlah
output tidak termampat yang dihasilkan sesaat boleh berbeza-beza.

Jadual berikut meringkaskan ciri pratetap:

Pratetap 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

Penerangan lajur:

· DictSize ialah saiz kamus LZMA2. Membazir ingatan untuk menggunakan a
kamus lebih besar daripada saiz fail yang tidak dimampatkan. Inilah sebabnya
baik untuk mengelak daripada menggunakan pratetap -7 ... -9 apabila tidak ada keperluan untuk mereka.
At -6 dan lebih rendah, jumlah memori yang terbuang biasanya cukup rendah hingga tidak
perkara.

· CompCPU ialah perwakilan ringkas bagi tetapan LZMA2 yang mempengaruhi
kelajuan mampatan. Saiz kamus juga mempengaruhi kelajuan, jadi sementara CompCPU adalah
sama untuk peringkat -6 ... -9, tahap yang lebih tinggi masih cenderung menjadi lebih perlahan.
Untuk menjadi lebih perlahan dan dengan itu mungkin pemampatan yang lebih baik, lihat --melampau.

· CompMem mengandungi keperluan memori pemampat dalam mod satu-benang.
Ia mungkin berbeza sedikit antara xz versi. Keperluan ingatan beberapa
mod berbilang benang masa hadapan mungkin secara mendadak lebih tinggi daripada mod tunggal-
mod berulir.

· DecMem mengandungi keperluan memori penyahmampat. Iaitu, pemampatan
tetapan menentukan keperluan memori penyahmampat. Yang tepat
penggunaan memori penyahmampat adalah lebih sedikit daripada saiz kamus LZMA2, tetapi
nilai dalam jadual telah dibundarkan kepada MiB penuh seterusnya.

-e, --melampau
Gunakan varian yang lebih perlahan daripada tahap pratetap mampatan yang dipilih (-0 ... -9) Untuk
semoga mendapat nisbah mampatan yang lebih baik sedikit, tetapi dengan nasib malang ini boleh
juga memburukkan lagi. Penggunaan memori penyahmampat tidak terjejas, tetapi pemampat
penggunaan memori meningkat sedikit pada tahap pratetap -0 ... -3.

Memandangkan terdapat dua pratetap dengan saiz kamus 4 MiB dan 8 MiB, pratetap -3e
and -5e gunakan tetapan yang lebih pantas sedikit (KomCPU lebih rendah) daripada -4e and -6e,
masing-masing. Dengan cara itu tiada dua pratetap yang sama.

Pratetap 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

Sebagai contoh, terdapat sejumlah empat pratetap yang menggunakan kamus 8 MiB, yang
pesanan daripada yang paling cepat kepada yang paling lambat adalah -5, -6, -5e, dan -6e.

--cepat
--terbaik Ini adalah alias yang agak mengelirukan untuk -0 and -9, masing-masing. Ini adalah
disediakan hanya untuk keserasian ke belakang dengan Util LZMA. Elakkan menggunakan ini
pilihan.

--saiz blok=saiz
Apabila memampatkan ke .xz format, bahagikan data input kepada blok saiz bait.
Blok dimampatkan secara bebas antara satu sama lain.

--memlimit-compress=menghadkan
Tetapkan had penggunaan memori untuk pemampatan. Jika pilihan ini dinyatakan berbilang
kali, yang terakhir berkuat kuasa.

Jika tetapan mampatan melebihi menghadkan, xz akan melaraskan tetapan ke bawah
supaya had tidak lagi melebihi dan memaparkan notis yang automatik
pelarasan telah dilakukan. Pelarasan sedemikian tidak dibuat apabila memampatkan dengan
--format=mentah atau jika --tidak-sesuaikan telah ditentukan. Dalam kes tersebut, ralat adalah
dipaparkan dan xz akan keluar dengan status keluar 1.

. menghadkan boleh ditentukan dalam pelbagai cara:

· The menghadkan boleh menjadi nilai mutlak dalam bait. Menggunakan akhiran integer seperti Eb
boleh berguna. Contoh: --memlimit-compress=80MiB

· The menghadkan boleh ditentukan sebagai peratusan jumlah memori fizikal (RAM). ini
boleh berguna terutamanya apabila menetapkan XZ_DEFAULTS pembolehubah persekitaran dalam a
skrip permulaan shell yang dikongsi antara komputer yang berbeza. Itu
cara had secara automatik lebih besar pada sistem dengan lebih banyak memori. Contoh:
--memlimit-compress=70%

· The menghadkan boleh ditetapkan semula kepada nilai lalainya dengan menetapkannya kepada 0. Ini adalah
pada masa ini bersamaan dengan menetapkan menghadkan kepada maks (tiada had penggunaan memori). sekali
sokongan multithreading telah dilaksanakan, mungkin terdapat perbezaan antara 0
and maks untuk kes berbilang benang, jadi disyorkan untuk digunakan 0 bukan maks
sehingga butiran telah diputuskan.

Lihat juga bahagiannya Memori penggunaan.

--memlimit-decompress=menghadkan
Tetapkan had penggunaan memori untuk penyahmampatan. Ini juga memberi kesan kepada --senarai mod. Jika
operasi tidak boleh dilakukan tanpa melebihi menghadkan, xz akan memaparkan ralat
dan menyahmampat fail akan gagal. Lihat --memlimit-compress=menghadkan mungkin
cara untuk menentukan menghadkan.

-M menghadkan, --memlimit=menghadkan, --ingatan=menghadkan
Ini bersamaan dengan menentukan --memlimit-compress=menghadkan
--memlimit-decompress=menghadkan.

--tidak-sesuaikan
Paparkan ralat dan keluar jika tetapan mampatan melebihi penggunaan memori
had. Lalai adalah untuk melaraskan tetapan ke bawah supaya penggunaan memori
had tidak melebihi. Pelarasan automatik sentiasa dilumpuhkan apabila membuat mentah
aliran (--format=mentah).

-T benang, --benang=benang
Nyatakan bilangan benang pekerja untuk digunakan. Bilangan benang sebenar boleh
kurang daripada benang jika menggunakan lebih banyak benang akan melebihi had penggunaan memori.

Berbilang benang mampatan and penyahmampatan adalah tidak dilaksanakan namun, so ini pilihan
mempunyai tidak kesan Untuk sekarang.

As of bertulis (2010-09-27) it belum menjadi memutuskan if benang akan be digunakan by
lalai on pelbagai warna sistem sekali menyokong Untuk menjalar mempunyai menjadi dilaksanakan.
Komen-komen adalah selamat datang. Faktor yang merumitkan ialah menggunakan banyak benang akan
meningkatkan penggunaan memori secara mendadak. Ambil perhatian bahawa jika multithreading akan menjadi
lalai, ia mungkin akan dilakukan supaya mod single-thread dan multithreaded
menghasilkan output yang sama, jadi nisbah mampatan tidak akan terjejas dengan ketara jika
threading akan didayakan secara lalai.

Adat pemampat menapis rantaian
Rantai penapis tersuai membenarkan penetapan tetapan mampatan secara terperinci dan bukannya
bergantung pada tetapan yang berkaitan dengan tahap pratetap. Apabila rantai penapis tersuai adalah
ditentukan, pilihan tahap pratetap mampatan (-0 ... -9 and --melampau) senyap
diabaikan.

Rantaian penapis adalah setanding dengan paip pada baris arahan. Apabila memampatkan,
input yang tidak dimampatkan pergi ke penapis pertama, yang outputnya pergi ke penapis seterusnya (jika
mana-mana). Output penapis terakhir akan ditulis ke fail termampat. Maksimum
bilangan penapis dalam rantai adalah empat, tetapi biasanya rantai penapis hanya mempunyai satu atau dua
penapis.

Banyak penapis mempunyai had pada tempat ia boleh berada dalam rantaian penapis: sesetengah penapis boleh
berfungsi hanya sebagai penapis terakhir dalam rantai, beberapa hanya sebagai penapis bukan terakhir, dan beberapa berfungsi
dalam mana-mana kedudukan dalam rantai. Bergantung pada penapis, had ini sama ada wujud
kepada reka bentuk penapis atau wujud untuk mengelakkan isu keselamatan.

Rantaian penapis tersuai ditentukan dengan menggunakan satu atau lebih pilihan penapis dalam susunannya
dikehendaki dalam rantaian penapis. Iaitu, susunan pilihan penapis adalah penting!
Apabila menyahkod aliran mentah (--format=mentah), rantai penapis ditentukan dalam susunan yang sama
seperti yang dinyatakan semasa memampatkan.

Penapis mengambil khusus penapis pilihan sebagai senarai yang dipisahkan koma. Koma tambahan masuk pilihan
tidak diendahkan. Setiap pilihan mempunyai nilai lalai, jadi anda perlu menentukan pilihan yang anda mahu sahaja
kepada perubahan.

--lzma1[=pilihan]
--lzma2[=pilihan]
Tambahkan penapis LZMA1 atau LZMA2 pada rantai penapis. Penapis ini hanya boleh digunakan sebagai
penapis terakhir dalam rantai.

LZMA1 ialah penapis warisan, yang disokong hampir semata-mata disebabkan oleh warisan .lzma
format fail, yang hanya menyokong LZMA1. LZMA2 ialah versi terkini LZMA1 kepada
selesaikan beberapa isu praktikal LZMA1. The .xz format menggunakan LZMA2 dan tidak menyokong
LZMA1 sama sekali. Kelajuan mampatan dan nisbah LZMA1 dan LZMA2 secara praktikal adalah
sama.

LZMA1 dan LZMA2 berkongsi set yang sama pilihan:

pratetap=pratetap
Tetapkan semula semua LZMA1 atau LZMA2 pilihan kepada pratetap. Dipratetap terdiri daripada integer,
yang mungkin diikuti oleh pengubah pratetap satu huruf. Integer boleh
dari 0 kepada 9, sepadan dengan pilihan baris arahan -0 ... -9. Satu-satunya
pengubah suai yang disokong pada masa ini e, yang sesuai --melampau. Lalai
pratetap is 6, dari mana nilai lalai untuk baki LZMA1 atau
LZMA2 pilihan telah diambil.

dict=saiz
Kamus (penampan sejarah) saiz menunjukkan berapa banyak bait baru-baru ini
data tidak dimampat yang diproses disimpan dalam ingatan. Algoritma cuba mencari
mengulangi urutan bait (padanan) dalam data yang tidak dimampatkan, dan menggantikannya
mereka dengan rujukan kepada data yang ada dalam kamus. Yang lebih besar
kamus, semakin tinggi peluang untuk mencari padanan. Oleh itu, meningkat
kamus saiz biasanya meningkatkan nisbah mampatan, tetapi kamus lebih besar
daripada fail yang tidak dimampatkan adalah pembaziran memori.

Kamus biasa saiz adalah dari 64 KiB hingga 64 MiB. Minimum ialah 4 KiB.
Maksimum untuk pemampatan pada masa ini ialah 1.5 GiB (1536 MiB). The
penyahmampat sudah menyokong kamus sehingga satu bait kurang daripada 4 GiB,
yang merupakan maksimum untuk format strim LZMA1 dan LZMA2.

Kamus saiz dan pencari padanan (mf) bersama-sama menentukan penggunaan memori bagi
pengekod LZMA1 atau LZMA2. Kamus yang sama (atau lebih besar). saiz is
diperlukan untuk penyahmampatan yang digunakan semasa memampatkan, oleh itu ingatan
penggunaan penyahkod ditentukan oleh saiz kamus yang digunakan apabila
memampatkan. The .xz pengepala menyimpan kamus saiz sama ada sebagai 2^n atau 2^n
+ 2^(n-1), jadi ini saiz agak diutamakan untuk pemampatan. Lain-lain
saiz akan dibundarkan apabila disimpan dalam .xz tajuk.

lc=lc Nyatakan bilangan bit konteks literal. Minimum ialah 0 dan
maksimum ialah 4; lalai ialah 3. Di samping itu, jumlah lc and lp bukan kemestian
melebihi 4.

Semua bait yang tidak boleh dikodkan sebagai padanan dikodkan sebagai literal. Itu
ialah, literal hanyalah bait 8-bit yang dikodkan satu demi satu.

Pengekodan literal membuat andaian bahawa yang tertinggi lc bit daripada
bait tidak dimampat sebelumnya berkorelasi dengan bait seterusnya. Cth dalam tipikal
Teks Inggeris, huruf besar sering diikuti oleh huruf kecil,
dan huruf kecil biasanya diikuti dengan huruf kecil yang lain.
Dalam set aksara AS-ASCII, tiga bit tertinggi ialah 010 untuk huruf besar
huruf dan 011 untuk huruf kecil. Bila lc sekurang-kurangnya 3, literal
pengekodan boleh memanfaatkan sifat ini dalam data yang tidak dimampatkan.

Nilai lalai (3) biasanya baik. Jika anda mahukan pemampatan maksimum,
ujian lc=4. Kadang-kadang ia membantu sedikit, dan kadang-kadang ia membuat pemampatan
lebih teruk. Jika ia memburukkan lagi, uji cth lc=2 juga.

lp=lp Nyatakan bilangan bit kedudukan literal. Minimum ialah 0 dan
maksimum ialah 4; lalai ialah 0.

Lp mempengaruhi jenis penjajaran dalam data tidak termampat yang diandaikan apabila
pengekodan literal. Lihat pb di bawah untuk maklumat lanjut tentang penjajaran.

pb=pb Nyatakan bilangan bit kedudukan. Minimum ialah 0 dan maksimum ialah 4;
lalai ialah 2.

Pb mempengaruhi jenis penjajaran dalam data tidak termampat yang diandaikan
umum. Lalai bermaksud penjajaran empat bait (2^pb=2^2=4), iaitu selalunya
pilihan yang baik apabila tiada tekaan yang lebih baik.

Apabila penjajaran diketahui, tetapan pb sewajarnya boleh mengurangkan saiz fail
sedikit. Contohnya dengan fail teks yang mempunyai penjajaran satu bait (US-ASCII,
ISO-8859-*, UTF-8), tetapan pb=0 boleh meningkatkan sedikit pemampatan. Untuk
teks UTF-16, pb=1 adalah pilihan yang baik. Jika penjajaran adalah nombor ganjil seperti
3 bait, pb=0 mungkin pilihan terbaik.

Walaupun penjajaran yang diandaikan boleh dilaraskan dengan pb and lp, LZMA1 dan
LZMA2 masih memihak kepada penjajaran 16-bait. Ia mungkin patut diambil kira
akaun semasa mereka bentuk format fail yang mungkin sering dimampatkan
dengan LZMA1 atau LZMA2.

mf=mf Pencari padanan mempunyai kesan besar pada kelajuan pengekod, penggunaan memori dan
nisbah mampatan. Biasanya pencari padanan Hash Chain lebih pantas daripada Binari
Pencari padanan pokok. Lalai bergantung pada pratetap: 0 kegunaan hc3, 1-3 penggunaan
hc4, dan selebihnya gunakan bt4.

Pencari padanan berikut disokong. Formula penggunaan memori di bawah
adalah anggaran kasar, yang paling hampir dengan realiti apabila imlak ialah
kuasa dua.

hc3 Rantaian Hash dengan pencincangan 2- dan 3-bait
Nilai minimum untuk baik: 3
Penggunaan memori:
imlak * 7.5 (jika imlak <= 16 MiB);
imlak * 5.5 + 64 MiB (jika imlak > 16 MiB)

hc4 Rantaian Hash dengan pencincangan 2-, 3- dan 4-bait
Nilai minimum untuk baik: 4
Penggunaan memori:
imlak * 7.5 (jika imlak <= 32 MiB);
imlak * 6.5 (jika imlak > 32 MiB)

bt2 Pokok Binari dengan pencincangan 2-bait
Nilai minimum untuk baik: 2
Penggunaan memori: imlak * 9.5

bt3 Pokok Binari dengan pencincangan 2- dan 3-bait
Nilai minimum untuk baik: 3
Penggunaan memori:
imlak * 11.5 (jika imlak <= 16 MiB);
imlak * 9.5 + 64 MiB (jika imlak > 16 MiB)

bt4 Pokok Binari dengan pencincangan 2-, 3- dan 4-bait
Nilai minimum untuk baik: 4
Penggunaan memori:
imlak * 11.5 (jika imlak <= 32 MiB);
imlak * 10.5 (jika imlak > 32 MiB)

mod=mod
Mampatan mod menentukan kaedah untuk menganalisis data yang dihasilkan oleh
pencari padanan. Disokong mod adalah cepat and biasa. Lalai adalah cepat Untuk
pratetap 0-3 dan biasa Untuk pratetap 4-9.

Kebiasaan cepat digunakan dengan pencari padanan Hash Chain dan biasa dengan Binari
Pencari padanan pokok. Ini juga yang pratetap lakukan.

bagus =baik
Nyatakan apa yang dianggap sebagai panjang yang bagus untuk perlawanan. Sekali perlawanan
sekurang-kurangnya baik bait ditemui, algoritma berhenti mencari mungkin
perlawanan yang lebih baik.

Nice boleh menjadi 2-273 bait. Nilai yang lebih tinggi cenderung untuk memberikan pemampatan yang lebih baik
nisbah dengan mengorbankan kelajuan. Lalai bergantung pada pratetap.

kedalaman=kedalaman
Tentukan kedalaman carian maksimum dalam pencari padanan. Lalai ialah
nilai khas 0, yang menjadikan pemampat menentukan yang munasabah kedalaman
dari mf and baik.

Masuk akal kedalaman untuk Hash Chains ialah 4-100 dan 16-1000 untuk Pokok Binari.
Menggunakan nilai yang sangat tinggi untuk kedalaman boleh membuat pengekod sangat perlahan dengan
beberapa fail. Elakkan daripada menetapkan kedalaman lebih 1000 melainkan anda bersedia untuk
mengganggu pemampatan sekiranya ia mengambil masa terlalu lama.

Apabila menyahkod aliran mentah (--format=mentah), LZMA2 hanya memerlukan kamus saiz.
LZMA1 juga memerlukan lc, lp, dan pb.

--x86[=pilihan]
--powerpc[=pilihan]
--ia64[=pilihan]
--lengan[=pilihan]
--ibu jari[=pilihan]
--sparc[=pilihan]
Tambahkan penapis cawangan/panggilan/lompat (BCJ) pada rantai penapis. Penapis ini boleh digunakan
hanya sebagai penapis bukan terakhir dalam rantai penapis.

Penapis BCJ menukar alamat relatif dalam kod mesin kepada alamat mutlaknya
rakan sejawat. Ini tidak mengubah saiz data, tetapi ia meningkat
redundansi, yang boleh membantu LZMA2 menghasilkan 0-15 % lebih kecil .xz fail. BCJ itu
penapis sentiasa boleh diterbalikkan, jadi menggunakan penapis BCJ untuk jenis data yang salah tidak
menyebabkan sebarang kehilangan data, walaupun ia boleh menjadikan nisbah mampatan sedikit lebih teruk.

Adalah baik untuk menggunakan penapis BCJ pada keseluruhan boleh laku; tidak perlu mengaplikasikannya
hanya pada bahagian boleh laku. Menggunakan penapis BCJ pada arkib yang mengandungi
kedua-dua fail boleh laku dan tidak boleh laku mungkin atau mungkin tidak memberikan hasil yang baik, jadi ia
secara amnya tidak baik untuk menggunakan penapis BCJ secara membuta tuli semasa memampatkan pakej binari
untuk pengedaran.

Penapis BCJ ini sangat pantas dan menggunakan jumlah memori yang tidak ketara. Jika BCJ
penapis meningkatkan nisbah mampatan fail, ia boleh meningkatkan kelajuan penyahmampatan pada
pada masa yang sama. Ini kerana, pada perkakasan yang sama, kelajuan penyahmampatan bagi
LZMA2 ialah kira-kira bilangan bait tetap data termampat sesaat.

Penapis BCJ ini mempunyai masalah yang diketahui berkaitan dengan nisbah mampatan:

· Beberapa jenis fail yang mengandungi kod boleh laku (cth fail objek, statik
perpustakaan, dan modul kernel Linux) mempunyai alamat dalam arahan
diisi dengan nilai pengisi. Penapis BCJ ini masih akan melakukan alamat
penukaran, yang akan menjadikan pemampatan lebih teruk dengan fail ini.

· Menggunakan penapis BCJ pada arkib yang mengandungi berbilang boleh laku yang serupa
menjadikan nisbah mampatan lebih teruk daripada tidak menggunakan penapis BCJ. Ini adalah kerana
penapis BCJ tidak mengesan sempadan fail boleh laku, dan
tidak menetapkan semula kaunter penukaran alamat untuk setiap boleh laku.

Kedua-dua masalah di atas akan diperbaiki pada masa hadapan dalam penapis baharu. Yang tua
Penapis BCJ masih akan berguna dalam sistem terbenam, kerana penyahkod bagi
penapis baharu akan menjadi lebih besar dan menggunakan lebih banyak memori.

Set arahan yang berbeza mempunyai penjajaran yang berbeza:

Nota Penjajaran Penapis
x86 1 32-bit atau 64-bit x86
PowerPC 4 Big endian sahaja
ARM 4 Little endian sahaja
ARM-Thumb 2 Little endian sahaja
IA-64 16 Endian besar atau kecil
SPARC 4 Endian besar atau kecil

Oleh kerana data yang ditapis BCJ biasanya dimampatkan dengan LZMA2, nisbah mampatan
boleh dipertingkatkan sedikit jika pilihan LZMA2 ditetapkan agar sepadan dengan penjajaran
penapis BCJ terpilih. Sebagai contoh, dengan penapis IA-64, ia adalah baik untuk ditetapkan pb=4
dengan LZMA2 (2^4=16). Penapis x86 adalah pengecualian; ia biasanya baik untuk melekat
Penjajaran empat bait lalai LZMA2 apabila memampatkan x86 boleh laku.

Semua penapis BCJ menyokong yang sama pilihan:

mula =mengimbangi
Nyatakan permulaan mengimbangi yang digunakan apabila menukar antara relatif dan
alamat mutlak. The mengimbangi mestilah gandaan penjajaran
penapis (lihat jadual di atas). Lalai ialah sifar. Dalam amalan,
lalai adalah baik; menyatakan adat mengimbangi hampir tidak pernah berguna.

--delta[=pilihan]
Tambahkan penapis Delta pada rantai penapis. Penapis Delta hanya boleh digunakan sebagai a
penapis bukan terakhir dalam rantai penapis.

Pada masa ini hanya pengiraan delta bait yang mudah disokong. Ia boleh berguna
semasa memampatkan contohnya imej peta bit tidak dimampatkan atau audio PCM tidak dimampatkan.
Walau bagaimanapun, algoritma tujuan khas mungkin memberikan hasil yang jauh lebih baik daripada
Delta + LZMA2. Ini benar terutamanya dengan audio, yang memampatkan lebih cepat dan
lebih baik cth dengan flac(1).

Disokong pilihan:

dist=jarak
nyatakan jarak pengiraan delta dalam bait. jarak mesti
1-256. Lalai ialah 1.

Sebagai contoh, dengan dist=2 dan input lapan bait A1 B1 A2 B3 A3 B5 A4 B7, iaitu
output akan menjadi A1 B1 01 02 01 02 01 02.

lain-lain pilihan
-q, --senyap
Sekat amaran dan notis. Tentukan ini dua kali untuk menyekat ralat juga. ini
pilihan tidak mempunyai kesan ke atas status keluar. Iaitu, walaupun ada amaran
ditindas, status keluar untuk menunjukkan amaran masih digunakan.

-v, --verbose
Berkata-kata. Jika ralat standard disambungkan ke terminal, xz akan memaparkan
penunjuk kemajuan. Menentukan --verbose dua kali akan memberikan lebih banyak output verbose.

Penunjuk kemajuan menunjukkan maklumat berikut:

· Peratusan siap ditunjukkan jika saiz fail input diketahui. Itu dia,
peratusan tidak boleh ditunjukkan dalam paip.

· Jumlah data termampat yang dihasilkan (memampatkan) atau digunakan (menyahmampatan).

· Jumlah data tidak dimampat yang digunakan (memampatkan) atau dihasilkan (menyahmampat).

· Nisbah mampatan, yang dikira dengan membahagikan jumlah data termampat
diproses setakat ini dengan jumlah data yang tidak dimampatkan yang diproses setakat ini.

· Kelajuan mampatan atau penyahmampatan. Ini diukur sebagai jumlah
data tidak termampat yang digunakan (mampatan) atau dihasilkan (penyahmampatan) sesaat.
Ia ditunjukkan selepas beberapa saat berlalu sejak itu xz mula memproses
fail.

· Masa berlalu dalam format M:SS atau H:MM:SS.

· Anggaran baki masa hanya ditunjukkan apabila saiz fail input diketahui
dan beberapa saat telah berlalu sejak itu xz mula memproses
fail. Masa ditunjukkan dalam format yang kurang tepat yang tidak mempunyai sebarang titik bertindih,
cth 2 min 30 s.

Apabila ralat standard bukan terminal, --verbose akan membuat xz cetak nama fail,
saiz termampat, saiz tidak termampat, nisbah mampatan, dan mungkin juga kelajuan
dan masa berlalu pada satu baris kepada ralat standard selepas memampatkan atau
menyahmampat fail. Kelajuan dan masa berlalu dimasukkan hanya apabila
operasi mengambil masa sekurang-kurangnya beberapa saat. Jika operasi tidak selesai, cth disebabkan oleh
gangguan pengguna, juga peratusan siap dicetak jika saiz
fail input diketahui.

-Q, --tidak-amaran
Jangan tetapkan status keluar kepada 2 walaupun keadaan bernilai amaran telah dikesan.
Pilihan ini tidak menjejaskan tahap verbositi, oleh itu kedua-duanya --senyap and --tidak-amaran
perlu digunakan untuk tidak memaparkan amaran dan untuk tidak mengubah status keluar.

--robot
Cetak mesej dalam format yang boleh dihuraikan mesin. Ini bertujuan untuk memudahkan penulisan
frontend yang ingin digunakan xz bukannya liblzma, yang mungkin berlaku dengan
pelbagai skrip. Output dengan pilihan ini didayakan bertujuan untuk menjadi stabil di seluruh
xz keluaran. Lihat bahagian ROBOT MODE untuk maklumat lanjut.

--info-ingatan
Paparkan, dalam format yang boleh dibaca manusia, berapa banyak memori fizikal (RAM) xz berfikir
sistem mempunyai dan had penggunaan memori untuk pemampatan dan penyahmampatan, dan keluar
dengan jayanya.

-h, - membantu
Paparkan mesej bantuan yang menerangkan pilihan yang paling biasa digunakan, dan keluar
dengan jayanya.

-H, --panjang-membantu
Paparkan mesej bantuan yang menerangkan semua ciri xz, dan keluar dengan jayanya

-V, --versi
Paparkan nombor versi bagi xz dan liblzma dalam format yang boleh dibaca manusia. Untuk mendapatkan
output yang boleh dihuraikan mesin, nyatakan --robot sebelum --versi.

ROBOT MODE


Mod robot diaktifkan dengan --robot pilihan. Ia menjadikan output daripada xz lebih senang untuk
menghuraikan oleh program lain. Pada masa ini --robot disokong hanya bersama-sama dengan --versi,
--info-ingatan, dan --senarai. Ia akan disokong untuk pemampatan dan penyahmampatan biasa
pada masa hadapan.

versi
xz --robot --versi akan mencetak nombor versi xz dan liblzma dalam yang berikut
format:

XZ_VERSION=XYYYZZZS
LIBLZMA_VERSION=XYYYZZZS

X Versi utama.

YYY Versi kecil. Nombor genap adalah stabil. Nombor ganjil ialah versi alfa atau beta.

Zzz Tahap tampalan untuk keluaran stabil atau hanya kaunter untuk keluaran pembangunan.

S Kestabilan. 0 ialah alfa, 1 ialah beta, dan 2 adalah stabil. S hendaklah sentiasa 2 apabila YYY
adalah genap.

XYYYZZZS adalah sama pada kedua-dua baris jika xz dan liblzma adalah daripada keluaran XZ Util yang sama.

Contoh: 4.999.9beta ialah 49990091 dan 5.0.0 ialah 50000002.

Memori menghadkan maklumat
xz --robot --info-ingatan mencetak satu baris dengan tiga lajur yang dipisahkan tab:

1. Jumlah jumlah memori fizikal (RAM) dalam bait

2. Had penggunaan memori untuk pemampatan dalam bait. Nilai khas sifar menunjukkan
tetapan lalai, yang untuk mod satu benang adalah sama seperti tiada had.

3. Had penggunaan memori untuk penyahmampatan dalam bait. Nilai khas sifar menunjukkan
tetapan lalai, yang untuk mod satu benang adalah sama seperti tiada had.

Pada masa hadapan, keluaran daripada xz --robot --info-ingatan mungkin mempunyai lebih banyak lajur, tetapi tidak pernah
lebih daripada satu baris.

senarai mod
xz --robot --senarai menggunakan keluaran yang dipisahkan tab. Lajur pertama setiap baris mempunyai rentetan
yang menunjukkan jenis maklumat yang terdapat pada baris itu:

nama Ini sentiasa baris pertama apabila mula menyenaraikan fail. Lajur kedua dihidupkan
baris ialah nama fail.

fail Baris ini mengandungi maklumat keseluruhan tentang .xz fail. Barisan ini sentiasa
dicetak selepas nama line.

aliran Jenis baris ini digunakan hanya apabila --verbose telah dinyatakan. Terdapat sebanyak aliran
garisan kerana terdapat aliran dalam .xz fail.

menyekat Jenis baris ini digunakan hanya apabila --verbose telah dinyatakan. Terdapat sebanyak menyekat
garisan kerana terdapat blok dalam .xz fail. The menyekat garisan ditunjukkan selepas semua
aliran garisan; jenis baris yang berbeza tidak bersilang.

ringkasan
Jenis baris ini digunakan hanya apabila --verbose telah dinyatakan dua kali. Barisan ini adalah
dicetak selepas semua menyekat garisan. Seperti yang fail garis, yang ringkasan baris mengandungi
maklumat keseluruhan tentang .xz fail.

jumlah keseluruhan Baris ini sentiasa baris terakhir keluaran senarai. Ia menunjukkan jumlahnya
kiraan dan saiz.

Lajur daripada fail garisan:
2. Bilangan aliran dalam fail
3. Jumlah bilangan blok dalam aliran
4. Saiz mampat fail
5. Saiz fail yang tidak dimampatkan
6. Nisbah mampatan, contohnya 0.123. Jika nisbah melebihi 9.999, tiga sempang
(---) dipaparkan bukannya nisbah.
7. Senarai nama semakan integriti yang dipisahkan koma. Rentetan berikut digunakan
untuk jenis cek yang diketahui: Tiada, CRC32, CRC64, dan SHA-256. Untuk semakan yang tidak diketahui
jenis, tidak diketahui-N digunakan, di mana N ialah ID Semak sebagai nombor perpuluhan (satu atau
dua digit).
8. Jumlah saiz padding strim dalam fail

Lajur daripada aliran garisan:
2. Nombor aliran (strim pertama ialah 1)
3. Bilangan blok dalam aliran
4. Offset permulaan termampat
5. Offset permulaan tidak dimampatkan
6. Saiz mampat (tidak termasuk pelapik aliran)
7. Saiz tidak mampat
8. Nisbah mampatan
9. Nama pemeriksaan integriti
10. Saiz pelapik aliran

Lajur daripada menyekat garisan:
2. Bilangan aliran yang mengandungi blok ini
3. Nombor blok relatif kepada permulaan strim (blok pertama ialah 1)
4. Nombor blok relatif kepada permulaan fail
5. Permulaan termampat mengimbangi relatif kepada permulaan fail
6. Permulaan tidak termampat mengimbangi relatif kepada permulaan fail
7. Jumlah saiz mampat blok (termasuk pengepala)
8. Saiz tidak mampat
9. Nisbah mampatan
10. Nama pemeriksaan integriti

If --verbose telah dinyatakan dua kali, lajur tambahan disertakan pada menyekat garis.
Ini tidak dipaparkan dengan satu --verbose, kerana mendapatkan maklumat ini memerlukan
banyak yang mencari dan dengan itu boleh menjadi perlahan:
11. Nilai semakan integriti dalam perenambelasan
12. Saiz pengepala blok
13. Bendera blok: c menunjukkan bahawa saiz termampat ada, dan u menunjukkan bahawa
saiz tidak termampat ada. Jika bendera tidak ditetapkan, tanda sempang (-) ditunjukkan
sebaliknya untuk memastikan panjang rentetan tetap. Bendera baharu boleh ditambah pada penghujung
rentetan pada masa hadapan.
14. Saiz data termampat sebenar dalam blok (ini tidak termasuk blok
pengepala, padding blok dan medan semak)
15. Jumlah memori (dalam bait) yang diperlukan untuk menyahmampat blok ini dengan ini xz
versi
16. Rantai penapis. Ambil perhatian bahawa kebanyakan pilihan yang digunakan pada masa pemampatan tidak boleh
diketahui, kerana hanya pilihan yang diperlukan untuk penyahmampatan disimpan dalam
yang .xz tajuk.

Lajur daripada ringkasan garisan:
2. Jumlah memori (dalam bait) yang diperlukan untuk menyahmampat fail ini dengan ini xz
versi
3. yes or tidak menunjukkan jika semua pengepala blok mempunyai kedua-dua saiz termampat dan
saiz tidak termampat yang disimpan di dalamnya
Sejak xz 5.1.2alfa:
4. Minimum xz versi yang diperlukan untuk menyahmampat fail

Lajur daripada jumlah keseluruhan baris:
2. Bilangan aliran
3. Bilangan blok
4. Saiz mampat
5. Saiz tidak mampat
6. Nisbah mampatan purata
7. Senarai nama semakan integriti yang dipisahkan koma yang terdapat dalam fail
8. Saiz pelapik aliran
9. Bilangan fail. Ini adalah di sini untuk mengekalkan susunan lajur terdahulu
sama seperti pada fail garis.

If --verbose telah dinyatakan dua kali, lajur tambahan disertakan pada jumlah keseluruhan baris:
10. Jumlah maksimum memori (dalam bait) yang diperlukan untuk menyahmampat fail dengan ini
xz versi
11. yes or tidak menunjukkan jika semua pengepala blok mempunyai kedua-dua saiz termampat dan
saiz tidak termampat yang disimpan di dalamnya
Sejak xz 5.1.2alfa:
12. Minimum xz versi yang diperlukan untuk menyahmampat fail

Versi akan datang boleh menambah jenis baris baharu dan lajur baharu boleh ditambahkan pada baris sedia ada
jenis, tetapi lajur sedia ada tidak akan diubah.

EXIT STATUS


0 Semua adalah baik.

1 Ralat berlaku.

2 Sesuatu yang bernilai amaran telah berlaku, tetapi tiada ralat sebenar berlaku.

Notis (bukan amaran atau ralat) yang dicetak pada ralat standard tidak menjejaskan status keluar.

PERSEKITARAN


xz menghuraikan senarai pilihan yang dipisahkan ruang daripada pembolehubah persekitaran XZ_DEFAULTS and
XZ_OPT, dalam susunan ini, sebelum menghuraikan pilihan daripada baris arahan. Perhatikan itu sahaja
pilihan dihuraikan daripada pembolehubah persekitaran; semua bukan pilihan diabaikan secara senyap.
Penghuraian selesai dengan getopt_long(3) yang digunakan juga untuk argumen baris arahan.

XZ_DEFAULTS
Pilihan lalai khusus pengguna atau seluruh sistem. Biasanya ini ditetapkan dalam cangkerang
skrip permulaan untuk membolehkan xzpengehad penggunaan memori secara lalai. Tidak termasuk
skrip permulaan shell dan kes khas yang serupa, skrip tidak boleh ditetapkan atau
tidak tenteram XZ_DEFAULTS.

XZ_OPT Ini adalah untuk menghantar pilihan kepada xz apabila tidak mungkin untuk menetapkan pilihan
secara langsung di xz baris arahan. Ini adalah kes contohnya apabila xz dijalankan oleh skrip
atau alat, cth GNU tar(1):

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

Skrip boleh digunakan XZ_OPT cth untuk menetapkan pilihan pemampatan lalai khusus skrip. Ia
masih disyorkan untuk membenarkan pengguna mengatasi XZ_OPT jika itu munasabah, cth
in sh(1) skrip seseorang boleh menggunakan sesuatu seperti ini:

XZ_OPT=${XZ_OPT-"-7e"}
eksport XZ_OPT

LZMA UTIL KOMPATIBILITAS


Sintaks baris arahan bagi xz boleh dikatakan merupakan superset daripada lzma, unlzma, dan lzcat as
ditemui daripada LZMA Utils 4.32.x. Dalam kebanyakan kes, adalah mungkin untuk menggantikan LZMA Utils dengan XZ
Util tanpa melanggar skrip sedia ada. Terdapat beberapa ketidakserasian walaupun, yang
kadangkala boleh menyebabkan masalah.

Mampatan pratetap tahap
Penomboran pratetap tahap mampatan tidak sama dalam xz dan Utiliti LZMA. The
perbezaan yang paling penting ialah cara saiz kamus dipetakan kepada pratetap yang berbeza.
Saiz kamus adalah lebih kurang sama dengan penggunaan memori penyahmampat.

Tahap xz LZMA Utilities
-0 256 KiB T/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

Perbezaan saiz kamus juga mempengaruhi penggunaan memori pemampat, tetapi terdapat beberapa
perbezaan lain antara LZMA Utils dan XZ Utils, yang menjadikan perbezaannya lebih besar:

Tahap xz LZMA Utilities 4.32.x
-0 3 MiB T/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

Tahap pratetap lalai dalam LZMA Utils ialah -7 manakala dalam XZ Utils ia adalah -6, jadi kedua-duanya menggunakan 8
Kamus MiB secara lalai.

Diteruskan vs tidak distrim .lzma fail
Saiz fail yang tidak dimampatkan boleh disimpan dalam .lzma kepala. LZMA Utils melakukannya
apabila memampatkan fail biasa. Alternatifnya adalah untuk menandakan bahawa saiz tidak dimampatkan adalah
tidak diketahui dan gunakan penanda akhir muatan untuk menunjukkan di mana penyahmampat harus berhenti.
LZMA Utils menggunakan kaedah ini apabila saiz yang tidak dimampatkan tidak diketahui, seperti yang berlaku untuk
contoh dalam paip.

xz menyokong penyahmampatan .lzma fail dengan atau tanpa penanda akhir muatan, tetapi semua .lzma
fail yang dicipta oleh xz akan menggunakan penanda akhir muatan dan mempunyai saiz yang tidak dimampatkan ditanda sebagai
tidak diketahui dalam .lzma kepala. Ini mungkin menjadi masalah dalam beberapa situasi yang tidak biasa. Untuk
contoh, a .lzma penyahmampat dalam peranti terbenam mungkin hanya berfungsi dengan fail yang mempunyai
diketahui saiz tidak termampat. Jika anda menghadapi masalah ini, anda perlu menggunakan LZMA Utils atau LZMA SDK
untuk mewujudkan .lzma fail dengan saiz tidak dimampat yang diketahui.

Tidak disokong .lzma fail
. .lzma format membenarkan lc nilai sehingga 8, dan lp nilai sehingga 4. LZMA Utils boleh
nyahmampat fail dengan mana-mana lc and lp, tetapi sentiasa mencipta fail dengan lc=3 and lp=0.
Mencipta fail dengan yang lain lc and lp adalah mungkin dengan xz dan dengan LZMA SDK.

Pelaksanaan penapis LZMA1 dalam liblzma memerlukan jumlah lc and lp kemestian
tidak melebihi 4. Justeru, .lzma fail, yang melebihi had ini, tidak boleh dinyahmampat
bersama xz.

LZMA Utils mencipta sahaja .lzma fail yang mempunyai saiz kamus 2^n (kuasa 2) tetapi
menerima fail dengan sebarang saiz kamus. liblzma menerima sahaja .lzma fail yang mempunyai a
saiz kamus 2^n atau 2^n + 2^(n-1). Ini adalah untuk mengurangkan positif palsu apabila
mengesan .lzma fail.

Had ini seharusnya tidak menjadi masalah dalam amalan, kerana hampir semua .lzma fail
telah dimampatkan dengan tetapan yang akan diterima oleh liblzma.

Trailing sampah
Apabila nyahmampat, LZMA Utils mengabaikan segala-galanya selepas yang pertama .lzma aliran.
Dalam kebanyakan situasi, ini adalah pepijat. Ini juga bermakna bahawa LZMA Utils tidak menyokong
penyahmampatan bercantum .lzma fail.

Sekiranya terdapat data yang tertinggal selepas yang pertama .lzma aliran, xz menganggap fail itu rosak
melainkan jika --strim tunggal telah digunakan. Ini mungkin memecahkan skrip kabur yang menganggapnya
mengekori sampah tidak diendahkan.

NOTA


Mampat output mungkin berbeza-beza
Output termampat tepat yang dihasilkan daripada fail input tidak termampat yang sama mungkin berbeza-beza
antara versi XZ Util walaupun pilihan pemampatan adalah sama. Ini kerana
pengekod boleh dipertingkatkan (mampatan lebih pantas atau lebih baik) tanpa menjejaskan format fail.
Output boleh berbeza walaupun antara binaan berbeza versi XZ Utils yang sama, jika
pilihan binaan yang berbeza digunakan.

Perkara di atas bermaksud bahawa melaksanakan --rsyncable untuk mencipta rsyncable .xz fail tidak akan pergi
berlaku tanpa membekukan sebahagian daripada pelaksanaan pengekod, yang kemudiannya boleh digunakan
bersama --rsyncable.

Terbenam .xz penyahmampat
Terbenam .xz pelaksanaan penyahmampat seperti XZ Embedded tidak semestinya menyokong fail
dicipta dengan penuh integriti menyemak jenis selain daripada tiada and crc32. Oleh kerana lalai ialah
--check=crc64, anda mesti gunakan --check=tiada or --check=crc32 apabila membuat fail untuk terbenam
sistem.

Di luar sistem terbenam, semuanya .xz penyahmampat format menyokong semua menyemak jenis, atau di
sekurang-kurangnya dapat menyahmampat fail tanpa mengesahkan semakan integriti jika fail
tertentu menyemak tidak disokong.

XZ Embedded menyokong penapis BCJ, tetapi hanya dengan offset permulaan lalai.

CONTOH


Asas
Mampatkan fail foo ke dalam foo.xz menggunakan tahap mampatan lalai (-6), dan keluarkan foo
jika pemampatan berjaya:

xz foo

Decompress bar.xz ke dalam bar dan jangan keluarkan bar.xz walaupun penyahmampatan berjaya:

xz -dk bar.xz

Buat baz.tar.xz dengan pratetap -4e (-4 --melampau), yang lebih perlahan daripada cth
lalai -6, tetapi memerlukan kurang memori untuk pemampatan dan penyahmampatan (48 MiB dan 5 MiB,
masing-masing):

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

Campuran fail mampat dan tidak mampat boleh dinyahmampat kepada output standard dengan a
perintah tunggal:

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

Selari mampatan of banyak fail
Pada GNU dan *BSD, mencari(1) dan xargs(1) boleh digunakan untuk menyelaraskan pemampatan banyak
fail:

cari . -taip f \! -nama '*.xz' -print0 \
| xargs -0r -P4 -n16 xz -T1

. -P pilihan untuk xargs(1) menetapkan bilangan selari xz proses. Nilai terbaik untuk
yang -n pilihan bergantung pada jumlah fail yang ada untuk dimampatkan. Jika terdapat hanya a
beberapa fail, nilainya mungkin 1; dengan berpuluh-puluh ribu fail, 100 atau
lebih banyak lagi mungkin sesuai untuk mengurangkan bilangan xz proses yang xargs(1) akan
akhirnya mencipta.

pilihan -T1 Untuk xz adakah untuk memaksanya ke mod single-threaded, kerana xargs(1) ialah
digunakan untuk mengawal jumlah selari.

Robot mod
Kira jumlah bait yang telah disimpan secara keseluruhan selepas memampatkan berbilang fail:

xz --robot --senarai *.xz | awk '/^jumlah/{cetak $5-$4}'

Skrip mungkin ingin mengetahui bahawa ia menggunakan cukup baharu xz. Yang berikut sh(1) skrip
menyemak bahawa nombor versi xz alat sekurang-kurangnya 5.0.0. Kaedah ini adalah
serasi dengan versi beta lama, yang tidak menyokong --robot pilihan:

jika ! eval "$(xz --robot --version 2> /dev/null)" ||
[ "$XZ_VERSION" -lt 50000002 ]; kemudian
echo "Xz anda terlalu lama."
fi
nyahset XZ_VERSION LIBLZMA_VERSION

Tetapkan had penggunaan memori untuk penggunaan penyahmampatan XZ_OPT, tetapi jika had sudah ada
tetapkan, jangan tambahkannya:

NEWLIM=$((123 << 20)) # 123 MiB
OLDLIM=$(xz --robot --info-memori | potong -f3)
jika [ $OLDLIM -eq 0 -o $OLDLIM -gt $NEWLIM ]; kemudian
XZ_OPT="$XZ_OPT --memlimit-decompress=$NEWLIM"
eksport XZ_OPT
fi

Adat pemampat menapis rantaian
Penggunaan paling mudah untuk rantai penapis tersuai ialah menyesuaikan pratetap LZMA2. Ini boleh jadi
berguna, kerana pratetap hanya meliputi subset daripada gabungan yang berpotensi berguna
tetapan mampatan.

Lajur CompCPU jadual daripada penerangan pilihan -0 ... -9 and
--melampau berguna apabila menyesuaikan pratetap LZMA2. Berikut adalah bahagian yang berkaitan
dikumpul daripada dua jadual tersebut:

Pratetap CompCPU
-0 0
-1 1
-2 2
-3 3
-4 4
-5 5
-6 6
-5e 7
-6e 8

Jika anda tahu bahawa fail memerlukan kamus yang agak besar (cth 32 MiB) untuk dimampatkan dengan baik,
tetapi anda mahu memampatkannya lebih cepat daripada xz -8 akan dilakukan, pratetap dengan nilai CompCPU yang rendah
(cth 1) boleh diubah suai untuk menggunakan kamus yang lebih besar:

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

Dengan fail tertentu, arahan di atas mungkin lebih pantas daripada xz -6 semasa memampatkan
jauh lebih baik. Walau bagaimanapun, perlu ditekankan bahawa hanya beberapa fail mendapat manfaat daripada a
kamus besar sambil mengekalkan nilai CompCPU rendah. Keadaan yang paling jelas, di mana a
kamus besar boleh membantu banyak, ialah arkib yang mengandungi fail yang hampir sama sekurang-kurangnya a
beberapa megabait setiap satu. Saiz kamus mestilah jauh lebih besar daripada mana-mana
fail individu untuk membolehkan LZMA2 memanfaatkan sepenuhnya persamaan antara
fail berturut-turut.

Jika penggunaan memori pemampat dan penyahmampat yang sangat tinggi adalah baik, dan fail itu
dimampatkan sekurang-kurangnya beberapa ratus megabait, ia mungkin berguna untuk menggunakan yang lebih besar
kamus daripada 64 MiB itu xz -9 akan menggunakan:

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

Menggunakan -vv (--verbose --verbose) seperti dalam contoh di atas boleh berguna untuk melihat ingatan
keperluan pemampat dan penyahmampat. Ingat bahawa menggunakan kamus yang lebih besar
daripada saiz fail yang tidak dimampatkan adalah pembaziran memori, jadi arahan di atas tidak
berguna untuk fail kecil.

Kadang-kadang masa mampatan tidak penting, tetapi penggunaan memori penyahmampat mesti begitu
dikekalkan rendah cth untuk membolehkan anda menyahmampat fail pada sistem terbenam. The
menggunakan arahan berikut -6e (-6 --melampau) sebagai asas dan menetapkan kamus kepada sahaja
64 KiB. Fail yang terhasil boleh dinyahmampat dengan XZ Embedded (itu sebabnya ada
--check=crc32) menggunakan kira-kira 100 KiB memori.

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

Jika anda ingin memerah sebanyak mungkin bait, laraskan bilangan literal
bit konteks (lc) dan bilangan bit kedudukan (pb) kadangkala boleh membantu. Melaraskan
bilangan bit kedudukan literal (lp) mungkin membantu juga, tetapi biasanya lc and pb lebih lagi
penting. Cth arkib kod sumber kebanyakannya mengandungi teks AS-ASCII, jadi sesuatu seperti
yang berikut mungkin memberikan sedikit (seperti 0.1 %) fail yang lebih kecil daripada xz -6e (cuba juga tanpa
lc=4):

xz --lzma2=preset=6e,pb=0,lc=4 source_code.tar

Menggunakan penapis lain bersama-sama dengan LZMA2 boleh meningkatkan pemampatan dengan jenis fail tertentu.
Cth untuk memampatkan pustaka kongsi x86-32 atau x86-64 menggunakan penapis BCJ x86:

xz --x86 --lzma2 libfoo.so

Ambil perhatian bahawa susunan pilihan penapis adalah penting. Jika --x86 dinyatakan selepas
--lzma2, xz akan memberikan ralat, kerana tidak boleh ada sebarang penapis selepas LZMA2, dan juga
kerana penapis x86 BCJ tidak boleh digunakan sebagai penapis terakhir dalam rantai.

Penapis Delta bersama-sama dengan LZMA2 boleh memberikan hasil yang baik dengan imej peta bit. Sepatutnya
biasanya mengalahkan PNG, yang mempunyai beberapa penapis yang lebih maju daripada delta ringkas tetapi menggunakan Deflate
untuk pemampatan sebenar.

Imej perlu disimpan dalam format tidak dimampatkan, contohnya sebagai TIFF tidak dimampatkan. Jarak
parameter penapis Delta ditetapkan untuk sepadan dengan bilangan bait setiap piksel dalam imej.
Cth keperluan peta bit RGB 24-bit dist=3, dan ia juga bagus untuk lulus pb=0 kepada LZMA2 kepada
menampung penjajaran tiga bait:

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

Jika berbilang imej telah dimasukkan ke dalam satu arkib (cth .tar), penapis Delta akan
kerjakan itu juga selagi semua imej mempunyai bilangan bait setiap piksel yang sama.

Gunakan xzcat dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

Arahan Linux

Ad