unxz(1): Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
(Skapade sidan med '== Namn == xz, unxz, xzcat, lzma, unlzma, lzcat – komprimera eller dekomprimera .xz- och .lzma-filer == Synopsis == <pre> xz [flagga]... [fil]... unxz motsvarar xz --decompress xzcat motsvarar xz --decompress --stdout lzma motsvarar xz --format=lzma unlzma motsvarar xz --format=lzma --decompress lzcat motsvarar xz --format=lzma --decompress --stdout </pre> Vid skript som ska dekomprimera filer rekommenderas att alltid använda namnet xz med rätt arg...')
 
Ingen redigeringssammanfattning
 
Rad 12: Rad 12:
lzcat  motsvarar  xz --format=lzma --decompress --stdout
lzcat  motsvarar  xz --format=lzma --decompress --stdout
</pre>
</pre>
 
Vid skript som behöver dekomprimera filer rekommenderas att alltid använda namnet xz med rätt argument (xz -d eller xz -dc) istället för aliasen unxz och xzcat.
Vid skript som ska dekomprimera filer rekommenderas att alltid använda namnet xz med rätt argument (xz -d eller xz -dc) istället för aliasen unxz och xzcat.


== Beskrivning ==
== Beskrivning ==
xz är ett allmänt komprimeringsverktyg med kommandosyntax liknande [[gzip(1)]] och [[bzip2(1)]]. Standardformatet är .xz, men även det äldre .lzma-formatet samt råa strömmar (utan filhuvuden) stöds.
xz är ett allmänt komprimeringsverktyg med syntax liknande [[gzip(1)]] och [[bzip2(1)]]. Det inbyggda filformatet är .xz, men även det äldre .lzma-formatet samt råa strömmar stöds. xz komprimerar eller dekomprimerar varje fil enligt valt driftläge. Om inga filer anges eller fil = -, används standard in/ut. xz vägrar skriva komprimerad data till terminal eller läsa komprimerad data från terminal, om inte --stdout används. Om inte --stdout används, skrivs data till nya filer härledda från ursprungsfilens namn. Vid komprimering läggs .xz eller .lzma till. Vid dekomprimering tas .xz eller .lzma bort. .txz/.tlz ersätts med .tar. Om målfil redan finns visas fel och filen hoppas över. Om filen inte är en vanlig fil, har flera hårdlänkar eller speciella rättighetsbitar, hoppas den över om inte flaggor ändrar detta. Efter lyckad bearbetning kopieras ägare, grupp, rättigheter och tidsstämplar. Andra metadata som ACL eller utökade attribut stöds ännu inte. När målfilen stängts tas källfilen bort, om inte --keep anges. Skriver man till stdout tas aldrig källfilen bort. SIGINFO eller SIGUSR1 till processen visar progress stderr.
xz komprimerar eller dekomprimerar varje fil enligt valt driftläge. Om ingen fil anges eller fil = - används standard in/ut. xz vägrar skriva komprimerad data till terminal eller läsa komprimerad data från terminal, såvida inte --stdout används.
 
Vid komprimering får målfilen suffixet .xz eller .lzma. Vid dekomprimering tas suffixet bort. Även .txz och .tlz känns igen och ersätts med .tar.
Om målfilen redan finns visas fel och filen hoppas över. Filer som inte är vanliga filer (t.ex. länkar), har fler hårdlänkar, eller har setuid/setgid/sticky-bit hoppas också över, om inte flaggor ändrar beteendet.
 
Efter lyckad (de)komprimering kopieras ägare, grupp, rättigheter och tidsstämplar till målfilen. Andra metadata (ACL, xattr) stöds ännu inte.
När målfilen stängts tas källfilen bort, om inte --keep används.
Skickas SIGINFO eller SIGUSR1 till xz skrivs progress-info till stderr.


=== Minnesanvändning ===
=== Minnesanvändning ===
Minnesanvändningen varierar från några hundra KB till flera GB beroende på inställningar. Dekompressern kräver oftast 5–20 % av kompressorns minne, men värsta fall flera GB.
Minnesanvändningen varierar från några hundra KB till flera GB beroende på komprimeringsinställningar. Dekompressern kräver oftast 5–20 % av kompressorns minne, men kan i värsta fall också kräva flera GB. xz har en inbyggd minnesgräns (standard 40 % av RAM). Vid för höga nivåer sänks inställningarna, utom vid --format=raw då fel ges. Om en fil inte kan dekomprimeras utan att överskrida gränsen, ges fel och filen hoppas över. Standardgränsen kan ändras med --memory=gräns. max betyder ingen gräns.
xz har en inbyggd minnesgräns (standard 40 % av RAM). Vid för höga nivåer justeras inställningarna nedåt, eller fel ges (för --format=raw). Gränsen kan ändras med --memory=gräns.


== Flaggor ==
== Flaggor ==
Rad 34: Rad 24:
! Flagga !! Beskrivning
! Flagga !! Beskrivning
|-
|-
| -z, --compress || Komprimera (standard om inget annat läge är valt).
| -z, --compress || Komprimera (standard).
|-
|-
| -d, --decompress, --uncompress || Dekomprimera.
| -d, --decompress, --uncompress || Dekomprimera.
|-
|-
| -t, --test || Testa integriteten hos komprimerade filer. Inga filer skapas.
| -t, --test || Testa integritet. Ingen data skrivs ut.
|-
|-
| -l, --list || Lista information om komprimerade filer. Inget skrivs ut okomprimerat.
| -l, --list || Lista information om komprimerade filer. Ingen data extraheras.
|-
|-
| -k, --keep || Behåll indatafiler (radera inte efteråt).
| -k, --keep || Behåll indatafiler.
|-
|-
| -f, --force || Överskriv målfil, bearbeta även filer som inte är vanliga, tillåt terminal-I/O. Med --decompress --stdout fungerar som cat för okända filer.
| -f, --force || Överskriv målfil, bearbeta även speciella filer, tillåt terminal-I/O. Med --decompress --stdout fungerar som cat för okända filer.
|-
|-
| -c, --stdout, --to-stdout || Skriv resultat till standard output istället för fil. Implicerar --keep.
| -c, --stdout, --to-stdout || Skriv alltid till standard output (impl. --keep).
|-
|-
| -S .suf, --suffix=.suf || Använd eget suffix istället för .xz/.lzma. Vid dekomprimering accepteras även filer med .suf.
| -S .suf, --suffix=.suf || Använd eget suffix istället för .xz/.lzma. Acceptera även vid dekomprimering.
|-
|-
| --files[=fil] || Läs filnamn att bearbeta från fil eller stdin (radseparerat).
| --files[=fil] || Läs filnamn från fil eller stdin (radseparerat).
|-
|-
| --files0[=fil] || Som --files men med NUL-separerade namn.
| --files0[=fil] || Läs filnamn från fil eller stdin (NUL-separerat).
|-
|-
| -F format, --format=format || Ange format: auto (standard), xz, lzma/alone, raw.
| -F format, --format=format || Ange format: auto (standard), xz, lzma/alone, raw.
|-
|-
| -C check, --check=check || Välj integritetskontroll (endast .xz): none, crc32, crc64 (standard), sha256.
| -C check, --check=check || Ange integritetskontroll: none, crc32, crc64 (standard), sha256.
|-
|-
| -0 … -9 || Förval för komprimeringsnivå: 0–2 snabba/låg minnesanvändning, 3–5 bra, 6–9 hög kompression (standard = -6).
| -0 … -9 || Förval för kompressionsnivå: -0 snabbast, -9 bäst ratio. Standard -6.
|-
|-
| --fast || Alias för -0 (bakåtkompatibilitet).
| --fast || Alias för -0.
|-
|-
| --best || Alias för -9 (bakåtkompatibilitet, missvisande).
| --best || Alias för -9 (missvisande).
|-
|-
| -e, --extreme || Modifiera förval (0–9) för lite bättre ratio men mycket långsammare.
| -e, --extreme || Modifiera förval för bättre ratio, men mycket långsammare.
|-
|-
| -M gräns, --memory=gräns || Sätt minnesgräns. Kan vara absoluta värden (t.ex. 80MiB), procent (70%), 0 = standard (40 % RAM), max = ingen gräns.
| -M gräns, --memory=gräns || Sätt minnesgräns (absolut, %, 0 = standard, max = obegränsat).
|-
|-
| -T trådar, --threads=trådar || Antal arbetstrådar. Standard = antal CPU-kärnor. (Multitråd ej implementerat ännu).
| -T n, --threads=n || Antal trådar (standard: CPU-kärnor). Ej implementerat ännu.
|-
|-
| --lzma1[=opt], --lzma2[=opt] || Lägg till LZMA1/2-filter (endast sist i kedjan). LZMA1 är legacy (.lzma), LZMA2 används i .xz.
| --lzma1[=opt], --lzma2[=opt] || LZMA1/LZMA2-filter (endast sist). LZMA1 används för .lzma, LZMA2 för .xz. Parametrar: preset=N, dict=storlek, lc, lp, pb, mode=fast/normal, mf=hc3/hc4/bt2/bt3/bt4, nice=N, depth=N.
|-
|-
| --x86, --powerpc, --ia64, --arm, --armthumb, --sparc || BCJ-filter för maskinkod (förbättrar kompression genom att normalisera hopp/adresser).
| --x86, --powerpc, --ia64, --arm, --armthumb, --sparc || BCJ-filter (ej sist). Normaliserar hopp/adresser i maskinkod. Parametrar: start=offset. Justeringar: x86=1, PowerPC=4, ARM=4, ARM-Thumb=2, IA-64=16, SPARC=4.
|-
|-
| --delta[=opt] || Deltafilter (icke-sista). Nyttigt för t.ex. bitmappar eller rå ljuddata.
| --delta[=opt] || Deltafilter (ej sist). Nyttigt för bitmappar, rå ljuddata. Parametrar: dist=N (1–256).
|-
|-
| -q, --quiet || Tysta varningar. Två gånger även fel (exitstatus påverkas inte).
| -q, --quiet || Tysta varningar. Två gånger: även fel.
|-
|-
| -v, --verbose || Mer utdata. Dubbel användning = ännu mer detaljer.
| -v, --verbose || Visa progress. Två gånger: extra detaljer.
|-
|-
| -Q, --no-warn || Sätt inte exitstatus=2 för varningar.
| -Q, --no-warn || Ändra inte exitstatus vid varningar.
|-
|-
| -h, --help || Kort hjälptext.
| -h, --help || Kort hjälptext.
Rad 86: Rad 76:
| -H, --long-help || Fullständig hjälptext.
| -H, --long-help || Fullständig hjälptext.
|-
|-
| -V, --version || Visa versionsinfo för xz och liblzma.
| -V, --version || Visa versionsinfo.
|}
|}


== Returvärden ==
== Returvärden ==
0: Lyckades.  
0 = lyckades  
1: Fel inträffade.  
1 = fel inträffade   
2: Varning men inget allvarligt fel
2 = varning inträffade men inga fel


== Miljövariabler ==
== Miljövariabler ==
XZ_OPT – Mellanlagrad lista av flaggor som tolkas före kommandoradsflaggor. Endast flaggor, inga filnamn. Parsas med getopt_long(3).
XZ_OPT – Mellanslagseparerad lista med flaggor som läses före kommandoradsflaggor. Endast flaggor, inga filnamn. Tolkning sker med getopt_long(3).


== Kompatibilitet med LZMA Utils ==
== Kompatibilitet med LZMA Utils ==
xz:s syntax är nästan en superset av lzma/unlzma/lzcat (LZMA Utils 4.32.x). Det går oftast att byta ut LZMA Utils mot XZ Utils utan problem, men vissa skillnader finns (t.ex. förinställda nivåer, dictionary-storlekar, strömhantering, trailing garbage).
xz:s syntax är en superset av lzma/unlzma/lzcat (LZMA Utils 4.32.x). Skillnader finns: förinställda nivåer och dictionary-storlekar skiljer sig. Förvalsnivån är -6 i xz (8 MiB dictionary), -7 i LZMA Utils. xz kräver att lc+lp ≤ 4, vilket gör att vissa .lzma-filer inte kan dekomprimeras. xz använder alltid slutmarkör i .lzma-strömmar, LZMA Utils inte alltid. xz betraktar trailing garbage som fel, LZMA Utils ignorerar.


== Notiser ==
== Notiser ==
* Komprimerat resultat kan variera mellan versioner av xz.
Komprimerat resultat kan variera mellan versioner även med samma inställningar. Detta beror på förbättringar i kompressorn. --rsyncable kommer inte implementeras. Inbäddade dekompressorer (XZ Embedded) stöder bara vissa kontrolltyper (--check=none eller crc32). BCJ-filter stöds men endast med standard offset.
* --rsyncable kommer inte implementeras.
* Inbäddade dekompressorer (XZ Embedded) stöder endast vissa kontrolltyper (--check=none/crc32).


== Se även ==
== Se även ==
Rad 110: Rad 98:
XZ Embedded: http://tukaani.org/xz/embedded.html   
XZ Embedded: http://tukaani.org/xz/embedded.html   
LZMA SDK: http://7-zip.org/sdk.html
LZMA SDK: http://7-zip.org/sdk.html


= Sidslut =
= Sidslut =

Nuvarande version från 29 augusti 2025 kl. 17.35

Namn

xz, unxz, xzcat, lzma, unlzma, lzcat – komprimera eller dekomprimera .xz- och .lzma-filer

Synopsis

xz [flagga]... [fil]...

unxz    motsvarar  xz --decompress
xzcat   motsvarar  xz --decompress --stdout
lzma    motsvarar  xz --format=lzma
unlzma  motsvarar  xz --format=lzma --decompress
lzcat   motsvarar  xz --format=lzma --decompress --stdout

Vid skript som behöver dekomprimera filer rekommenderas att alltid använda namnet xz med rätt argument (xz -d eller xz -dc) istället för aliasen unxz och xzcat.

Beskrivning

xz är ett allmänt komprimeringsverktyg med syntax liknande gzip(1) och bzip2(1). Det inbyggda filformatet är .xz, men även det äldre .lzma-formatet samt råa strömmar stöds. xz komprimerar eller dekomprimerar varje fil enligt valt driftläge. Om inga filer anges eller fil = -, används standard in/ut. xz vägrar skriva komprimerad data till terminal eller läsa komprimerad data från terminal, om inte --stdout används. Om inte --stdout används, skrivs data till nya filer härledda från ursprungsfilens namn. Vid komprimering läggs .xz eller .lzma till. Vid dekomprimering tas .xz eller .lzma bort. .txz/.tlz ersätts med .tar. Om målfil redan finns visas fel och filen hoppas över. Om filen inte är en vanlig fil, har flera hårdlänkar eller speciella rättighetsbitar, hoppas den över om inte flaggor ändrar detta. Efter lyckad bearbetning kopieras ägare, grupp, rättigheter och tidsstämplar. Andra metadata som ACL eller utökade attribut stöds ännu inte. När målfilen stängts tas källfilen bort, om inte --keep anges. Skriver man till stdout tas aldrig källfilen bort. SIGINFO eller SIGUSR1 till processen visar progress på stderr.

Minnesanvändning

Minnesanvändningen varierar från några hundra KB till flera GB beroende på komprimeringsinställningar. Dekompressern kräver oftast 5–20 % av kompressorns minne, men kan i värsta fall också kräva flera GB. xz har en inbyggd minnesgräns (standard 40 % av RAM). Vid för höga nivåer sänks inställningarna, utom vid --format=raw då fel ges. Om en fil inte kan dekomprimeras utan att överskrida gränsen, ges fel och filen hoppas över. Standardgränsen kan ändras med --memory=gräns. max betyder ingen gräns.

Flaggor

Flagga Beskrivning
-z, --compress Komprimera (standard).
-d, --decompress, --uncompress Dekomprimera.
-t, --test Testa integritet. Ingen data skrivs ut.
-l, --list Lista information om komprimerade filer. Ingen data extraheras.
-k, --keep Behåll indatafiler.
-f, --force Överskriv målfil, bearbeta även speciella filer, tillåt terminal-I/O. Med --decompress --stdout fungerar som cat för okända filer.
-c, --stdout, --to-stdout Skriv alltid till standard output (impl. --keep).
-S .suf, --suffix=.suf Använd eget suffix istället för .xz/.lzma. Acceptera även vid dekomprimering.
--files[=fil] Läs filnamn från fil eller stdin (radseparerat).
--files0[=fil] Läs filnamn från fil eller stdin (NUL-separerat).
-F format, --format=format Ange format: auto (standard), xz, lzma/alone, raw.
-C check, --check=check Ange integritetskontroll: none, crc32, crc64 (standard), sha256.
-0 … -9 Förval för kompressionsnivå: -0 snabbast, -9 bäst ratio. Standard -6.
--fast Alias för -0.
--best Alias för -9 (missvisande).
-e, --extreme Modifiera förval för bättre ratio, men mycket långsammare.
-M gräns, --memory=gräns Sätt minnesgräns (absolut, %, 0 = standard, max = obegränsat).
-T n, --threads=n Antal trådar (standard: CPU-kärnor). Ej implementerat ännu.
--lzma1[=opt], --lzma2[=opt] LZMA1/LZMA2-filter (endast sist). LZMA1 används för .lzma, LZMA2 för .xz. Parametrar: preset=N, dict=storlek, lc, lp, pb, mode=fast/normal, mf=hc3/hc4/bt2/bt3/bt4, nice=N, depth=N.
--x86, --powerpc, --ia64, --arm, --armthumb, --sparc BCJ-filter (ej sist). Normaliserar hopp/adresser i maskinkod. Parametrar: start=offset. Justeringar: x86=1, PowerPC=4, ARM=4, ARM-Thumb=2, IA-64=16, SPARC=4.
--delta[=opt] Deltafilter (ej sist). Nyttigt för bitmappar, rå ljuddata. Parametrar: dist=N (1–256).
-q, --quiet Tysta varningar. Två gånger: även fel.
-v, --verbose Visa progress. Två gånger: extra detaljer.
-Q, --no-warn Ändra inte exitstatus vid varningar.
-h, --help Kort hjälptext.
-H, --long-help Fullständig hjälptext.
-V, --version Visa versionsinfo.

Returvärden

0 = lyckades 1 = fel inträffade 2 = varning inträffade men inga fel

Miljövariabler

XZ_OPT – Mellanslagseparerad lista med flaggor som läses före kommandoradsflaggor. Endast flaggor, inga filnamn. Tolkning sker med getopt_long(3).

Kompatibilitet med LZMA Utils

xz:s syntax är en superset av lzma/unlzma/lzcat (LZMA Utils 4.32.x). Skillnader finns: förinställda nivåer och dictionary-storlekar skiljer sig. Förvalsnivån är -6 i xz (8 MiB dictionary), -7 i LZMA Utils. xz kräver att lc+lp ≤ 4, vilket gör att vissa .lzma-filer inte kan dekomprimeras. xz använder alltid slutmarkör i .lzma-strömmar, LZMA Utils inte alltid. xz betraktar trailing garbage som fel, LZMA Utils ignorerar.

Notiser

Komprimerat resultat kan variera mellan versioner även med samma inställningar. Detta beror på förbättringar i kompressorn. --rsyncable kommer inte implementeras. Inbäddade dekompressorer (XZ Embedded) stöder bara vissa kontrolltyper (--check=none eller crc32). BCJ-filter stöds men endast med standard offset.

Se även

xzdec(1), gzip(1), bzip2(1) XZ Utils: http://tukaani.org/xz/ XZ Embedded: http://tukaani.org/xz/embedded.html LZMA SDK: http://7-zip.org/sdk.html

Sidslut

Orginalhemsidan på Engelska :https://linux.die.net/man/1/unxz Det här är en maskinöversättning av Linux man sidor till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp som har sponsrat Linux.se med webbhotell.