zip(1): Skillnad mellan sidversioner

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök
Ingen redigeringssammanfattning
Ingen redigeringssammanfattning
 
Rad 1: Rad 1:
== Namn ==
== Namn ==
zip – paketera och komprimera filer
zip – paketera och komprimera (arkivera) filer


== Syntax ==
== Syntax ==
zip [ -options ] [ -b sökväg ] [ -t tid ] [ -n suffix ] [ -xi lista ] zipfil fil …
<pre>
zip [ -options ] [ -b sökväg ] [ -t tid ] [ -n suffix ] [ -xi lista ] zipfil -@
zip [ -aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$ ] [ --longoption ... ]
    [ -b sökväg ] [ -n suffixer ] [ -t datum ] [ -tt datum ]
    [ zipfil [ fil ... ] ] [ -xi lista ]
</pre>


== Beskrivning ==
== Beskrivning ==
zip paketerar och komprimerar filer till ett ZIP-arkiv. Programmet liknar en kombination av [[tar(1)]] och [[compress(1)]]. Arkivet kan innehålla en eller flera filer, som vardera kan komprimeras individuellt. ZIP-formatet stöds av många plattformar och är kompatibelt med PKZIP för DOS.
''zip'' är ett verktyg för komprimering och filpaketering för Unix, VMS, MSDOS, OS/2, Windows 9x/NT/XP, Minix, Atari, Macintosh, Amiga och Acorn RISC OS. Det motsvarar ungefär en kombination av [[tar(1)]] och [[compress(1)]] och är kompatibelt med PKZIP (Phil Katz’ ZIP för MSDOS).
 
Ett syskonprogram ([[unzip(1)]]) packar upp zip-arkiv. ''zip'' och ''unzip'' kan arbeta med arkiv skapade av PKZIP (stöd för de flesta funktioner upp till PKZIP 4.6). ''zip'' 3.0 är kompatibelt med PKZIP 2.04 och stöder även Zip64-förlängningarna (PKZIP 4.5) som låter både arkiv och filer överstiga 4 GB/64k poster. ''zip'' kan även använda ''bzip2''-komprimering om biblioteket är länkat vid kompilering (kräver modern unzip).
 
Se avsnittet '''EXEMPEL''' längst ned för typiska användningsfall.
 
'''Stora arkiv och Zip64.''' ''zip'' använder Zip64 automatiskt när nödvändigt (t.ex. filer > 4 GB, arkiv > 4 GB, > ~64k poster, eller streamade arkiv när storleken inte är känd i förväg). För att extrahera Zip64 behövs en unzip kompatibel med PKZIP 4.5 (t.ex. ''unzip 6.0'' eller senare). Vissa kombinationer – t.ex. ''streamade'' arkiv, standardkryptering eller split-arkiv med paus – kan använda databeskrivare (data descriptors) som äldre PKZIP inte stöder.
 
'''Mac OS X.''' Mac OS X stöds via Unix-porten. Hänvisningar till ”MacOS” avser äldre system. Stöd för t.ex. resource forks i Unix-porten förväntas i kommande släpp.
 
'''Kort hjälp.''' Kör ''zip'' eller ''unzip'' utan argument för en kort hjälpsida.
 
== Användning ==
Programmet används för att paketera filer för distribution, arkivering och utrymmesbesparing. ''zip'' placerar en eller flera komprimerade filer i ett arkiv och sparar filnamn, sökväg, datum/tid för senaste ändring, skydd/attribut samt kontrollinformation för integritetskontroll. Hela katalogträd kan packas i ett kommando. Kompression 2:1–3:1 är vanlig för text. ''zip'' har metoden ''deflate'' samt kan lagra okomprimerat; om ''bzip2'' finns kan den metoden också användas. ''zip'' väljer automatisk bästa av kompression/lagra per fil.
 
'''Kommandomall'''
<pre>
zip [alternativ] arkiv inpath inpath ...
</pre>
Där ''arkiv'' är nytt eller existerande zip-arkiv och ''inpath'' är fil- eller katalognamn (jokertecken tillåtna). Om arkivet finns ersätts poster med samma relativa namn, nya läggs in.
 
'''-@ fil-listor.''' ''zip -@ foo'' läser filnamn en per rad från stdin (ej på MacOS). Vanligt med ''find | zip -@''.
 
'''Streaming in/ut.''' Zipfilnamn ”-” skriver till stdout (t.ex. pipe till band). En indatafil ”-” läses från stdin (t.ex. ''tar cf - . | zip backup -''). Om Zip64 är aktiverat och ''zip'' används som filter skapas Zip64-ström (kräver unzip 4.5+). ''-fz-'' kan tvinga PKZIP-2-kompatibelt om <4 GB, annars fel.
 
'''Zip-filer.''' Vid ändring av ett befintligt arkiv skrivs ett temporärt arkiv som ersätter det gamla vid lyckad slutföring. Saknas suffix läggs ''.zip'' till; split-arkiv kräver ''.zip'' på sista delen.
 
'''Skanning.''' Lång filskanning visar ”Scanning files …” med punkter. ''-q'' tystar. ''-sf'' listar filer utan att bearbeta.
 
'''Kommandolägen.''' ''zip'' har externa lägen (läser från filsystem) och interna (verkar endast på arkivposter):
* '''add''' (standard): uppdatera/addera.
* '''update''' (''-u''): uppdatera ändrade + addera nya.
* '''freshen''' (''-f''): uppdatera ändrade, addera ej nya.
* '''delete''' (''-d''): ta bort valda poster.
* '''copy''' (''-U'' + ''--out''): välj poster i arkivet och skriv nytt arkiv (ursprung lämnas orört).
* '''filesync''' (''-FS''): synka arkiv med filsystem (ersätter där tid/storlek skiljer, adderar nya, raderar poster utan motsvarighet). Kan ta bort – säkerhetskopiera eller använd ''--out''.


Om den angivna zip-filen inte existerar skapas ett nytt arkiv. Om det finns uppdateras det: nya filer läggs till, ändrade filer ersätts och filer kan tas bort med särskilda flaggor.
Se även ''-DF'' för differensarkiv.


Standardfilnamnstillägget är `.zip`.
'''Split-arkiv.''' ''zip 3.x'' kan skapa split-arkiv (''ARCHIVE.z01'', ''.z02'', … ''.zip''). Spanned (diskettvolymer) stöds ej direkt. Använd ''-s'' för split-storlek och ''-sp'' för paus mellan delar (byte av media). Uppdatering av split görs via ''--out''. ''-O/--out'' kan konvertera split-storlek eller slå ihop med ''-s 0''.
 
'''Unicode.''' Zip-standarden definierar ett ”lokalt” teckenset för sökvägar; i praktiken sparas lokalt. Med Unicode-stöd sparar ''zip'' även UTF-8-version av sökvägen för portabilitet. Konsolfönster kan visa fel tecken, men filhanterare visar rätt med rätt typsnitt. ''-UN'' styr beteende vid mismatch.
 
'''Kommandorad.''' Kortflaggor kan negateras med ”-” efter flaggan, värden kan följa direkt, med ”=” eller som nästa argument. Långflaggor börjar med ”--” och kan kortas till unik prefix; negation med avslutande ”-”. Värden med ”=” eller efterföljande argument. Se ''-sc''.


== Flaggor ==
== Flaggor ==
Rad 17: Rad 59:
! Flagga !! Beskrivning
! Flagga !! Beskrivning
|-
|-
| -a || Behandla alla filer som text. Översätter radslut från CR LF (DOS/Windows) till LF (Unix) när filer lagras, och omvänt när de packas upp. Kan ge problem för binära filer.
| -a / --ascii || [EBCDIC-system] Översätt text till ASCII vid lagring (textläge).
|-
|-
| -A || Justerar centralkatalogen i ett självextraherande arkiv att det blir korrekt igen efter ändringar. Användbart efter att data lagts till i ett exekverbart arkiv.
| -A / --adjust-sfx || Justera offsetar i ett självextraherande arkiv (SFX) efter att ett SFX-stub har försatts. På Amiga kan endast Amiga-porten uppdatera SFX; använd -J för att ta bort stub om annat krävs.
|-
|-
| -b sökväg || Anger temporärkatalog där zip kan skriva sina arbetsfiler när det inte finns tillräckligt med minne.
| -AC / --archive-clear || [WIN32] Rensa arkivbiten på filer som packats (efter ev. -T-test). Varning: när biten rensats är den borta. Kombinera ev. med -sf och -MM. Se även -DF.
|-
|-
| -c || Frågar efter en kommentar för varje fil som läggs till. Kommentarerna lagras i arkivet.
| -AS / --archive-set || [WIN32] Inkludera bara filer med satt arkivbit. Kataloger lagras normalt bara som sökvägar. Kan användas med -AC för inkrementella säkerhetskopior (ej helt tillförlitlig då andra program manipulerar biten). Alternativ: -t (datum) eller -DF (differens).
|-
|-
| -d fil ... || Tar bort angivna filer från arkivet. Jokertecken kan användas.
| -B / --binary || [VM/CMS, MVS] Tvinga binär läsning (standard är text).
|-
|-
| -D || Tar bort katalogposter i arkivet. Normalt skapas katalogposter för att kunna återskapa katalogstrukturen.
| -Bn || [TANDEM] Sätt Edit/Enscribe-formatflaggor: bit0=ingen delimiter, bit1=LF istället för CR/LF, bit2=space-fylla, bit3=trimma spaces, bit8=force 30K read.
|-
|-
| -e || Krypterar filerna. zip frågar efter lösenord. Krypteringen är enkel och kompatibel med PKZIP, men rekommenderas inte för känslig information.
| -b PATH / --temp-path PATH || Använd angiven temporär plats för arbetsarkiv. Nyttigt om källfilsystemet saknar utrymme för både gammalt och nytt arkiv samtidigt.
|-
|-
| -F || Försöker reparera ett skadat arkiv genom att rekonstruera centralkatalogen.
| -c / --entry-comments || Fråga efter enradiga kommentarer för varje fil. Operationen körs först, sedan frågas efter kommentarer.
|-
|-
| -FF || Försöker reparera ett mycket skadat arkiv. Går igenom alla filer och försöker återskapa strukturen även om delar saknas.
| -C / --preserve-case || [VMS] Bevara skiftläge (alla) på VMS. ''-C-'' nedkonverterar.
|-
|-
| -f || Uppdaterar arkivet: ersätter filer om originalet på disken är nyare än versionen i arkivet.
| -C2 / --preserve-case-2 || [VMS] Bevara skiftläge (ODS2). ''-C2-'' nedkonverterar.
|-
|-
| -FS || Skapar en split-version av ett arkiv. Dela upp arkivet i flera delar för lagring på t.ex. disketter.
| -C5 / --preserve-case-5 || [VMS] Bevara skiftläge (ODS5). ''-C5-'' nedkonverterar.
|-
|-
| -g || Tvingar zip att lägga till i ett befintligt arkiv istället för att skriva över det.
| -d / --delete || Ta bort poster ur ett arkiv. Mönster matchar arkivets interna vägar. På MSDOS är matchning skiftlägeskänslig (se -ic för att ignorera skiftläge).
|-
|-
| -h || Visar en sammanfattning av användningen (hjälp).
| -db / --display-bytes || Visa löpande antal bearbetade byte (zippade och kvar).
|-
|-
| -i lista || Inkluderar endast filer som matchar listan. Jokertecken kan användas.
| -dc / --display-counts || Visa räknare för poster bearbetade och kvar.
|-
|-
| -j || Ignorerar katalogsökvägar. Endast filnamn lagras i arkivet. Alla filer hamnar i rotkatalogen när arkivet packas upp.
| -dd / --display-dots || Visa ”prickar” medan varje post komprimeras. Standard: en prick per 10 MB. Även -v visar prickar. Prickstorlek styrs av -ds.
|-
|-
| -J || Tar bort skräpinformation från ett självextraherande arkiv. Användbart för att göra arkivet mindre.
| -df / --datafork || [MacOS] Endast data-fork lagras (ej resource fork). Bra för export till andra OS.
|-
|-
| -k || Använder DOS 8.3-format på filnamn (kortnamn). Behåller kompatibilitet med äldre system.
| -dg / --display-globaldots || Visa progressprickar för hela arkivet istället för per fil. Kombinera med t.ex. ''zip -qdgds 10m'' för tyst + prickar var 10 MB.
|-
|-
| -l || Vid lagring av textfiler översätts CR LF till LF. Detta anpassar filer från DOS/Windows till Unix.
| -ds SIZE / --dot-size SIZE || Sätt intervall för prickar (t.ex. 100k, 10m, 1g). 0 stänger av prickar. Påverkar även -v. Gäller inte ”Scanning files”-prickar.
|-
|-
| -ll || Vid lagring av textfiler översätts LF till CR LF. Detta anpassar filer från Unix till DOS/Windows.
| -du / --display-usize || Visa okomprimerad storlek per post.
|-
|-
| -L || Visar licensinformation om zip.
| -dv / --display-volume || Visa volym-/disknummer för läsning/skrivning när arkiv läses/skrivs (t.ex. split).
|-
|-
| -m || Flyttar filer till arkivet. Filerna läggs till i arkivet och tas sedan bort från filsystemet.
| -D / --no-dir-entries || Skapa inte separata katalogposter i arkivet (standard är att skapa dem för att spara attribut). Kan sättas som standard via ZIPOPT.
|-
|-
| -n suffix || Anger filsuffix som inte ska komprimeras. Filer lagras oförändrade. Exempel: `-n .zip:.jpg:.png`
| -DF / --difference-archive || Skapa ett differensarkiv med nya/förändrade filer sedan originalarkivet skapades (jämför storlek och tid). Kör i samma katalog med samma inlista som originalet. Kräver korrekt TZ.
|-
|-
| -N || Lagrar anteckningar (notes) i arkivet. Speciell funktion för vissa plattformar.
| -e / --encrypt || Kryptera innehåll. Lösenord efterfrågas två gånger (tyst). Standardkryptering är relativt svag – använd starkare kryptering (PGP) för känsligt material.
|-
|-
| -o || Sätter arkivets datumstämpel till tidpunkten för den senaste filen i arkivet.
| -E / --longnames || [OS/2] Använd .LONGNAME-extended attribute som filnamn.
|-
|-
| -O namn || Anger vilken teckenkodning som används för filnamn. Viktigt för filer med icke-ASCII-tecken.
| -f / --freshen || ”Fräscha upp”: ersätt endast filer som redan finns i arkivet och är äldre än källan. Lägger inte till nya filer. Kräver korrekt TZ.
|-
|-
| -p || Bevarar filers åtkomst- och ändringsrättigheter i arkivet (på Unix-system).
| -F / --fix || Försök reparera arkivet när centralkatalogen finns delvis. Hoppar över inkonsistenta poster; resultatet ska vara giltigt.
|-
|-
| -P lösenord || Anger lösenord direkt på kommandoraden. Detta är osäkert eftersom lösenordet blir synligt i processlistor.
| -FF / --fixfix || Hårdare reparation: skanna från början efter signaturer. Krävs om arkivet är kraftigt skadat eller avklippt i slutet. Kan skapa inkonsekvent arkiv – kör därefter -F.
|-
|-
| -q || Tyst läge: minskar mängden information zip skriver ut.
| -FI / --fifo || [Unix] Läs även FIFOs (named pipes). Som standard hoppas FIFOs över (risk för hängning).
|-
|-
| -r || Rekursivt. Lägg till filer i underkataloger. Symboliska länkar följs inte utan -R.
| -FS / --filesync || Synkronisera arkivet mot filsystemet: kopiera oförändrade poster, recomprimera ändrade, och TA BORT poster som saknar motsvarighet på disk. Kör i samma rot som vid skapande så relativa sökvägar matchar. Använd ''--out'' om originalet inte får ändras. Kräver korrekt TZ.
|-
|-
| -R || Följ symboliska länkar och lägg till filer som pekas ut.
| -g / --grow || ”Väx”: lägg till i befintligt arkiv istället för att skapa nytt. Om operationen misslyckas försöker zip återställa. Ignoreras om någon post måste uppdateras/ta bortas.
|-
|-
| -s || Dela arkivet i flera delar (split archive). Man anger storlek per del, t.ex. 1m för 1 MB.
| -h / -? / --help || Visa hjälp (utan argument visar zip hjälp; med endast -v visas versionsinfo, se -v).
|-
|-
| -S || Lagra inte system- och dolda filer (på system som har sådana attribut).
| -h2 / --more-help || Utökad hjälp om kommandorad, mönstermatchning och ovanliga flaggor.
|-
|-
| -t mmddååååhhmmss || Lagra endast filer ändrade efter det angivna datumet/tiden.
| -i MÖNSTER… / --include MÖNSTER… || Inkludera endast filer som matchar mönstren (matchning sker på arkivets interna vägar). Lista kan avslutas med ett ensamt ”@”. Jokertecken kräver escapning på Unix-skal.
|-
|-
| -tt mmddååååhhmmss || Lagra endast filer ändrade före det angivna datumet/tiden.
| -I / --no-image || [Acorn RISC OS] Skanna inte igenom ”Image files” (t.ex. DOS-partitioner eller Spark-arkiv); lagra dem som enstaka filer.
|-
|-
| -T || Testa arkivet efter att det skapats för att säkerställa att inga fel uppstått.
| -ic / --ignore-case || [VMS, WIN32] Ignorera skiftläge även vid matchning mot arkivposter (t.ex. -f, -d, -U). Kan orsaka att flera poster matchas.
|-
|-
| -u || Uppdatera arkivet: lägg till nya filer och ersätt ändrade.
| -j / --junk-paths || Släng sökvägar: bara filnamn lagras (katalogposter skapas inte).
|-
|-
| -v || Visa detaljerad information under körning. Skriver ut filer och statistik.
| -jj / --absolute-path || [MacOS] Lagra full sökväg inkl. volymnamn. Standard är relativ sökväg.
|-
|-
| -V || Behåll VMS-versioner av filnamn (för VMS-system).
| -J / --junk-sfx || Ta bort ett förprependat SFX-stub (”preamble”) från arkivet.
|-
|-
| -x lista || Exkluderar filer som matchar listan. Jokertecken kan användas.
| -k / --DOS-names || Försök konvertera namn/sökvägar till DOS-kompatibla, spara endast DOS-attribut och markera posten som skapad på MSDOS (för kompatibilitet med äldre PKUNZIP).
|-
|-
| -X || Utesluter extra attribut som annars skulle sparas (t.ex. UID/GID Unix).
| -l / --to-crlf || Översätt Unix LF → MSDOS CRLF (textfiler; använd inte binärfiler). Läggs till extra CR om filen redan har CRLF för att möjliggöra exakt återställning med ''unzip -a''.
|-
|-
| -y || Behåller symboliska länkar som länkar i arkivet, istället för att följa dem.
| -la / --log-append || Append till befintlig loggfil (standard är overwrite).
|-
|-
| -z || Frågar efter och lagrar en arkivkommentar (en text som gäller för hela arkivet).
| -lf PATH / --logfile-path PATH || Skriv logg till fil. Med -la appendas. Med -li inkluderas informationsmeddelanden; annars bara varningar/fel samt avslutande status.
|-
|-
| -Z metod || Anger komprimeringsmetod: `store` (ingen komprimering), `deflate` (standard), eller andra om tillgängliga.
| -li / --log-info || Skriv även informationsmeddelanden till loggfilen (filnamn, framsteg m.m.).
|-
|-
| -0 || Lagrar filer utan komprimering (store only).
| -ll / --from-crlf || Översätt MSDOS CRLF → Unix LF (textfiler; inte på binärfiler). Kontrollerar första bufferten för binärt innehåll och hoppar då över konvertering. Nyare detektering stöder UTF-8 m.fl.
|-
|-
| -1 … -9 || Anger komprimeringsnivå. `-1` = snabbast, `-9` = bästa kompression. Standard är `-6`.
| -L / --license || Visa licens för zip.
|-
|-
| -@ || Läser filnamn från standard in (stdin) istället för kommandoraden.
| -m / --move || Flytta: lägg till filer i arkivet och radera original efter lyckad arkivering. Rekommenderas tillsammans med -T (testa först).
|-
| -MM / --must-match || Alla in-mönster måste matcha minst en fil och alla hittade filer måste vara läsbara. Annars avbryter ''zip'' direkt med felkod (OPEN/18) och inget arkiv skapas.
|-
| -n SUFFIXER / --suffixes SUFFIXER || Komprimera inte filer med listade suffix (separerade med ”:” eller ”;”), de lagras ”store”. Standardlista inkluderar .Z .zip .zoo .arc .lzh .arj. ''-9'' försöker komprimera alla oavsett suffix. På RISC OS är suffix = filtyper (hex).
|-
| -nw / --no-wild || Ingen intern jokerteckenexpansion (skalet kan dock expandera om inte escapat). Bra vid läsning av färdiga sökvägslistor.
|-
| -N / --notes || [Amiga, MacOS] Spara filnoter som zip-kommentarer (kan återställas med ''unzip -N''). Med -c frågas bara för filer utan filnot.
|-
| -o / --latest-time || Sätt arkivets mtime till den senaste mtime bland posterna. Kan användas fristående. Kräver korrekt TZ för jämförelser.
|-
| -O FIL / --output-file FIL / --out FIL || Skriv förändrat arkiv till ny fil istället för att uppdatera originalet (krävs för att uppdatera split-arkiv). Kan även användas för att konvertera split-storlek (t.ex. ''-s 2g in.zip --out out.zip'') eller slå ihop (''-s 0'').
|-
| -p / --paths || Inkludera relativa sökvägar (standard). ''-j'' slänger sökvägar.
|-
| -P LÖSEN / --password LÖSEN || Använd angivet lösenord (osäkert – synligt i processlistor, loggar m.m.). Föredra interaktiv inmatning eller starkare kryptering.
|-
| -q / --quiet || Tyst läge: inga informationsmeddelanden eller kommentarsfrågor (nyttigt i skript/bakgrund).
|-
| -Qn / --Q-flag n || [QDOS] Lagra QDOS-huvudinfo: bit0=lägg ej till headers, bit1=lägg till för alla, bit2=välj bort ”tryck tangent vid avslut”.
|-
| -r / --recurse-paths || Rekursivt: gå ned i katalogträd och lägg till allt (även filer som börjar med ”.” då expansion inte görs av skalet). Använd -i/-x för att välja subset.
|-
| -R / --recurse-patterns || Rekursiv matchning från nuvarande katalog baserad på mönster (på arkivets interna vägar), t.ex. ''zip -R foo "*.c"''.
|-
| -RE / --regex || [WIN32] Återaktivera [ ]-matchning (regex-liknande) på Windows (avstängd som standard p.g.a. förväxling med filnamn som innehåller [ eller ]).
|-
| -s N / --split-size N || Skapa split-arkiv och sätt delstorlek (heltal + valfri multiplikator k/m/g/t; default m). Skapar ARCHIVE.z01, .z02, …, .zip. ''-s 0'' eller negation slår ihop. Uppdateringar görs via ''--out''.
|-
| -sb / --split-bell || Ring ”bell” vid paus för varje ny split (kräver -sp).
|-
| -sc / --show-command || Visa den tolkade kommandoraden (inkl. ZIPOPT) och avsluta. Hjälper att förstå hur argument permuteras/sammansmälts.
|-
| -sf / --show-files || Visa vilka filer som skulle bearbetas och avsluta. Med ''-sf-'' skrivs endast till öppen loggfil.
|-
| -so / --show-options || Visa alla tillgängliga flaggor på denna byggda binär (avläser intern optionstabell).
|-
| -sp / --split-pause || Split med paus: skriv varje del sekventiellt och pausa för media-byte. Använder streamformat som vissa unzippar kan ha problem med – testa innan produktion. Konvertera till standard med ''--out''.
|-
| -su / --show-unicode || Som -sf men visa även Unicode-versionen av sökvägen om den finns.
|-
| -sU / --show-just-unicode || Visa endast Unicode-sökvägen om den finns, annars standardvarianten.
|-
| -sv / --split-verbose || Extra information vid split (hur uppdelning sker).
|-
| -S / --system-hidden || [MSDOS/OS2/WIN32/ATARI] Inkludera system- och dolda filer. [MacOS] Inkludera ”finder invisible”.
|-
| -t MMDDYYYY / --from-date MMDDYYYY || Bearbeta endast filer ändrade på eller efter datumet. Även ISO 8601 ''YYYY-MM-DD''. Kräver korrekt TZ.
|-
| -tt MMDDYYYY / --before-date MMDDYYYY || Bearbeta endast filer ändrade före datumet. Även ISO 8601 ''YYYY-MM-DD''. Kräver korrekt TZ.
|-
| -T / --test || Testa det nya arkivet. Om testet misslyckas lämnas det gamla arkivet orört och -m tar inte bort källfiler.
|-
| -TT CMD / --unzip-command CMD || Använd kommando ''CMD'' istället för ''unzip -tqq'' vid test (-T). ''{}'' ersätts med temporär arkivfil; annars läggs filnamn sist.
|-
| -u / --update || Uppdatera: ersätt poster som är äldre än källan och lägg till nya. ''-u'' utan argument beter sig som ''-f''.
|-
| -U / --copy-entries || Kopiera utvalda poster från in-arkiv till nytt arkiv (kräver ''--out''). Mönstren matchar ENDAST arkivets poster (fil­systemet läses inte). Bra för att ändra split-storlek eller filtrera. Kryptering/dekryptering stöds ej i copy-läge (använd ''zipcloak'').
|-
| -UN v / --unicode v || Styr hur Unicode-sökvägar hanteras vid mismatch mellan lokal och UTF-8: ''q''=avsluta, ''w''=varna (standard), ''i''=ignorera, ''n''=använd ej Unicode, ''e''=escapa icke-ASCII (#Uxxxx/#Lxxxxxx), ''u''=lagra UTF-8 som ”native”.
|-
| -v / --verbose || Verbos: visa prickar (10 MB default, styrs av -ds), rapportera zip-strukturens egenheter. Om -v är enda argumentet skrivs diagnostik/version (kan omdirigeras till fil).
|-
| -V / --VMS-portable || [VMS] Spara VMS-attribut (Stream_LF och rena binärer extraheras normalt på icke-VMS; indexerade/varlängd kan se korrupta ut).
|-
| -VV / --VMS-specific || [VMS] Spara VMS-attribut och alla allokerade block (inkl. data efter EOF). Nästan alla filer ser korrupta ut utanför VMS.
|-
| -w / --VMS-versions || [VMS] Bifoga versionsnummer (flera versioner lagras). Standard: endast senaste.
|-
| -ww / --VMS-dot-versions || [VMS] Bifoga versionsnummer med ''.nnn''-format.
|-
| -ws / --wild-stop-dirs || Jokertecken matchar inte över katalognivåer. Använd ''**'' för att matcha över gränser. Utan -ws matchar ''/foo/bar/*'' både ''/foo/bar/file'' och ''/foo/bar/dir/file''.
|-
| -x MÖNSTER… / --exclude MÖNSTER… || Exkludera mönster (matchning mot interna vägar). Listor kan läsas via ''@fil''. Escapa jokertecken på skal som expanderar.
|-
| -X / --no-extra || Spara inte extra-attribut (EA på OS/2, uid/gid/tider på Unix). Endast Unicode- och Zip64-extra fält sparas. ''-X-'' inkluderar default extra OCH kopierar okända extra-fält.
|-
| -y / --symlinks || [Unix/VMS≥8.3] Lagra symboliska länkar som länkar istället för att följa dem (undviker dubbletter).
|-
| -z / --archive-comment || Arkivkommentar för hela arkivet (multirad; avsluta med en rad med endast ”.”, eller EOF). Kan också läsas från fil: ''zip -z foo < kommentar.txt''.
|-
| -Z METOD / --compression-method METOD || Sätt metod: ''store'' (ingen kompr, motsv. -0), ''deflate'' (standard), ''bzip2'' (om kompilerat in; metod 12 – stöd varierar). ''zip -Z bzip2 foo bar.c''.
|-
| -0 … -9 || Komprimeringsnivå: ''-0''=ingen (store), ''-1''=snabb, … ''-9''=bäst (standard ''-6''). Påverkar främst deflate.
|-
| -! / --use-privileges || [WIN32] Använd tilldelade privilegier för att läsa alla aspekter av NT-säkerhet.
|-
| -@ / --names-stdin || Läs listan av indatafiler från standard in, en fil per rad.
|-
| -$ / --volume-label || [MSDOS/OS2/WIN32] Inkludera volymetikett för enheten där första filen finns. För att endast ta med etiketten eller styra enhet: ange enhetsnamnet som första ”fil” (t.ex. ''zip -$ foo a: c:bar'').
|}
|}


== Exempel ==
== Exempel ==
Enkelt:
<pre>
zip stuff *
</pre>
Skapar ''stuff.zip'' av alla filer i aktuell katalog (ej ”.”-filer på Unix, använd ''zip stuff .* *'' för att inkludera dem).


Skapa arkivet test.zip av alla filer i aktuell katalog:
Hela en katalog:
<pre>
<pre>
zip test *
zip -r foo foo
</pre>
</pre>


Skapa ett arkiv av katalogen projekt och alla filer under den:
Utan katalognamnet (”junk paths”):
<pre>
<pre>
zip -r projekt.zip projekt
zip -j foo foo/*
</pre>
</pre>


Uppdatera ett arkiv med nya och ändrade filer:
Lite i taget när utrymmet är snålt (och flytta efteråt):
<pre>
<pre>
zip -u arkiv.zip *
zip -rm foo foo/tom
zip -rm foo foo/dick
zip -rm foo foo/harry
</pre>
</pre>


Ta bort en fil ur arkivet:
Split-arkiv (t.ex. 2 GB-delar):
<pre>
<pre>
zip -d arkiv.zip fil.txt
zip -s 2g -r split.zip foo
</pre>
</pre>


Flytta filer in i arkivet (originalen tas bort):
Uppdatera split-arkiv genom att skriva nytt arkiv:
<pre>
<pre>
zip -m backup.zip rapport.docx
zip inarchive.zip foo.c bar.c --out outarchive.zip
</pre>
</pre>


Skapa ett lösenordsskyddat arkiv:
Lista filer via find:
<pre>
<pre>
zip -e hemligt.zip hemlig.txt
find . -name "*.[ch]" -print | zip source -@
</pre>
</pre>


== Författare ==
Streama via tar:
Info-ZIP-gruppen: Mark Adler, Richard B. Wales, Jean-loup Gailly, Onno van der Linden, Kai Uwe Rommel, Igor Mandrichenko, Paul Kienitz, Rick Floyd, och många fler.
<pre>
tar cf - . | zip backup -
unzip -p backup | tar xf -
</pre>
 
== Mönstermatchning (Unix) ==
Skal (sh/csh/bash) expanderar normalt ?, *, [] före zip. Escapa med ”\” eller citattecken för att låta ''zip'' matcha mot arkivets interna vägar. Exempel:
<pre>
zip archive "*.[hc]"    # matchar .h och .c
zip archive "[a-f]*"    # filer som börjar a–f
zip archive "*.[!o]"    # allt som inte slutar på .o
</pre>
På WIN32 måste []-matchning aktiveras med ''-RE''. För -i/-x/-R/-d/-U ska jokertecken nästan alltid escapas.
 
== Miljövariabler ==
; ZIPOPT : Standardflaggor som infogas efter ''zip'' i kommandoraden.
; ZIP     : (ej RISC OS/VMS) alias för ZIPOPT.
; Zip$Options, Zip$Exts : [RISC OS] standardflaggor respektive extensionhantering.
; ZIP_OPTS : [VMS] som ZIPOPT.
 
== Diagnostik ==
Returvärden (ungefär PKWARE):
; 0 : OK.
; 2 : Oväntat arkivslut.
; 3 : Generiskt zipformatfel (bearbetning kan ändå ha lyckats).
; 4 : Kunde inte allokera minne.
; 5 : Allvarligt zipformatfel (troligen stop).
; 6 : Post för stor (utan Zip64) / för stor för ''zipsplit''.
; 7 : Ogiltigt kommentarsformat.
; 8 : ''zip -T'' misslyckades eller minne slut.
; 9 : Avbruten av användare (Ctrl-C).
; 10 : Fel vid användning av temporärfil.
; 11 : Läs-/sökfel.
; 12 : Inget att göra.
; 13 : Saknat eller tomt zip-arkiv.
; 14 : Skrivfel.
; 15 : Kunde inte skapa fil att skriva till.
; 16 : Felaktiga kommandoradsparametrar.
; 18 : Kunde inte öppna specificerad fil för läsning.
; 19 : Kompilerad med alternativ som inte stöds på detta system.
 
[VMS] mappar Unix/PC-returvärden till VMS-stil (Facility 1955, Code=2*Unix_status, Severity enligt ziperr.h).


== Se även ==
== Buggar ==
[[unzip(1)]], [[tar(1)]], [[compress(1)]], [[gzip(1)]], [[bzip2(1)]]
''zip 3.0'' är inte kompatibelt med PKUNZIP 1.10 (använd ''zip 1.1'' om sådan kompatibilitet krävs). Uppdatera inte ''zip 3.0''-arkiv med ''zip 1.1''/PKZIP 1.10 om de innehåller krypterade medlemmar eller har skapats via pipe/oseekbar enhet (felaktigt format). Vissa VMS-format hanteras inte; använd stream-LF eller konvertera. OS/2 har begränsningar i DosFindFirst/Next för tecken som ”!” och ”#”.


== Colophon ==
== Författare ==
Denna manualsida är översatt till svenska från den engelska zip(1)-manualen.
Copyright © 1990–2008 Info-ZIP (Mark Adler, Richard B. Wales, Jean-loup Gailly, Onno van der Linden, Kai Uwe Rommel, Igor Mandrichenko, John Bush, Paul Kienitz m.fl.). Distribueras under Info-ZIP-licens. Se projektsidan för felrapporter (inkl. ''zip -v''-utskrift, byggflaggor, OS-version m.m.).
Rapportera fel i översättningen till systemadministratören eller översättningsprojektet.


== Tack ==
Tack till R. P. Byrne (Shrink.Pas), Phil Katz (ZIP-formatet), Steve Burg (deflate-klargöranden), Haruhiko Okumura & Leonid Broukhis (idéer), Keith Petersen, Rich Wales, Hunter Goatley, Mark Adler (lista/ftp) och testare i Info-ZIP-gruppen. Manualsidan omskriven för Unix av R. P. C. Rodgers, uppdaterad av E. Gordon för ''zip 3.0''.


== Se även ==
[[compress(1)]], [[shar(1)]], [[tar(1)]], [[unzip(1)]], [[gzip(1)]]


== Refereras av ==
[[7z(1)]], [[7za(1)]], [[archivemount(1)]], [[ark(1)]], [[cboard(6)]], [[gzip(1)]], [[libarchive-formats(5)]], [[lrunzip(1)]], [[lrzcat(1)]], [[lrzip(1)]], [[lrztar(1)]], [[lrzuntar(1)]], [[pbzip2(1)]], [[stone(3)]], [[unzipsfx(1)]], [[zipcloak(1)]], [[zipnote(1)]], [[zipsplit(1)]]


= Sidslut =
= Sidslut =

Nuvarande version från 29 augusti 2025 kl. 17.03

Namn

zip – paketera och komprimera (arkivera) filer

Syntax

zip [ -aABcdDeEfFghjklLmoqrRSTuvVwXyz!@$ ] [ --longoption ... ]
    [ -b sökväg ] [ -n suffixer ] [ -t datum ] [ -tt datum ]
    [ zipfil [ fil ... ] ] [ -xi lista ]

Beskrivning

zip är ett verktyg för komprimering och filpaketering för Unix, VMS, MSDOS, OS/2, Windows 9x/NT/XP, Minix, Atari, Macintosh, Amiga och Acorn RISC OS. Det motsvarar ungefär en kombination av tar(1) och compress(1) och är kompatibelt med PKZIP (Phil Katz’ ZIP för MSDOS).

Ett syskonprogram (unzip(1)) packar upp zip-arkiv. zip och unzip kan arbeta med arkiv skapade av PKZIP (stöd för de flesta funktioner upp till PKZIP 4.6). zip 3.0 är kompatibelt med PKZIP 2.04 och stöder även Zip64-förlängningarna (PKZIP 4.5) som låter både arkiv och filer överstiga 4 GB/64k poster. zip kan även använda bzip2-komprimering om biblioteket är länkat vid kompilering (kräver modern unzip).

Se avsnittet EXEMPEL längst ned för typiska användningsfall.

Stora arkiv och Zip64. zip använder Zip64 automatiskt när nödvändigt (t.ex. filer > 4 GB, arkiv > 4 GB, > ~64k poster, eller streamade arkiv när storleken inte är känd i förväg). För att extrahera Zip64 behövs en unzip kompatibel med PKZIP 4.5 (t.ex. unzip 6.0 eller senare). Vissa kombinationer – t.ex. streamade arkiv, standardkryptering eller split-arkiv med paus – kan använda databeskrivare (data descriptors) som äldre PKZIP inte stöder.

Mac OS X. Mac OS X stöds via Unix-porten. Hänvisningar till ”MacOS” avser äldre system. Stöd för t.ex. resource forks i Unix-porten förväntas i kommande släpp.

Kort hjälp. Kör zip eller unzip utan argument för en kort hjälpsida.

Användning

Programmet används för att paketera filer för distribution, arkivering och utrymmesbesparing. zip placerar en eller flera komprimerade filer i ett arkiv och sparar filnamn, sökväg, datum/tid för senaste ändring, skydd/attribut samt kontrollinformation för integritetskontroll. Hela katalogträd kan packas i ett kommando. Kompression 2:1–3:1 är vanlig för text. zip har metoden deflate samt kan lagra okomprimerat; om bzip2 finns kan den metoden också användas. zip väljer automatisk bästa av kompression/lagra per fil.

Kommandomall

zip [alternativ] arkiv inpath inpath ...

Där arkiv är nytt eller existerande zip-arkiv och inpath är fil- eller katalognamn (jokertecken tillåtna). Om arkivet finns ersätts poster med samma relativa namn, nya läggs in.

-@ fil-listor. zip -@ foo läser filnamn en per rad från stdin (ej på MacOS). Vanligt med find | zip -@.

Streaming in/ut. Zipfilnamn ”-” skriver till stdout (t.ex. pipe till band). En indatafil ”-” läses från stdin (t.ex. tar cf - . | zip backup -). Om Zip64 är aktiverat och zip används som filter skapas Zip64-ström (kräver unzip 4.5+). -fz- kan tvinga PKZIP-2-kompatibelt om <4 GB, annars fel.

Zip-filer. Vid ändring av ett befintligt arkiv skrivs ett temporärt arkiv som ersätter det gamla vid lyckad slutföring. Saknas suffix läggs .zip till; split-arkiv kräver .zip på sista delen.

Skanning. Lång filskanning visar ”Scanning files …” med punkter. -q tystar. -sf listar filer utan att bearbeta.

Kommandolägen. zip har externa lägen (läser från filsystem) och interna (verkar endast på arkivposter):

  • add (standard): uppdatera/addera.
  • update (-u): uppdatera ändrade + addera nya.
  • freshen (-f): uppdatera ändrade, addera ej nya.
  • delete (-d): ta bort valda poster.
  • copy (-U + --out): välj poster i arkivet och skriv nytt arkiv (ursprung lämnas orört).
  • filesync (-FS): synka arkiv med filsystem (ersätter där tid/storlek skiljer, adderar nya, raderar poster utan motsvarighet). Kan ta bort – säkerhetskopiera eller använd --out.

Se även -DF för differensarkiv.

Split-arkiv. zip 3.x kan skapa split-arkiv (ARCHIVE.z01, .z02, … .zip). Spanned (diskettvolymer) stöds ej direkt. Använd -s för split-storlek och -sp för paus mellan delar (byte av media). Uppdatering av split görs via --out. -O/--out kan konvertera split-storlek eller slå ihop med -s 0.

Unicode. Zip-standarden definierar ett ”lokalt” teckenset för sökvägar; i praktiken sparas lokalt. Med Unicode-stöd sparar zip även UTF-8-version av sökvägen för portabilitet. Konsolfönster kan visa fel tecken, men filhanterare visar rätt med rätt typsnitt. -UN styr beteende vid mismatch.

Kommandorad. Kortflaggor kan negateras med ”-” efter flaggan, värden kan följa direkt, med ”=” eller som nästa argument. Långflaggor börjar med ”--” och kan kortas till unik prefix; negation med avslutande ”-”. Värden med ”=” eller efterföljande argument. Se -sc.

Flaggor

Flagga Beskrivning
-a / --ascii [EBCDIC-system] Översätt text till ASCII vid lagring (textläge).
-A / --adjust-sfx Justera offsetar i ett självextraherande arkiv (SFX) efter att ett SFX-stub har försatts. På Amiga kan endast Amiga-porten uppdatera SFX; använd -J för att ta bort stub om annat krävs.
-AC / --archive-clear [WIN32] Rensa arkivbiten på filer som packats (efter ev. -T-test). Varning: när biten rensats är den borta. Kombinera ev. med -sf och -MM. Se även -DF.
-AS / --archive-set [WIN32] Inkludera bara filer med satt arkivbit. Kataloger lagras normalt bara som sökvägar. Kan användas med -AC för inkrementella säkerhetskopior (ej helt tillförlitlig då andra program manipulerar biten). Alternativ: -t (datum) eller -DF (differens).
-B / --binary [VM/CMS, MVS] Tvinga binär läsning (standard är text).
-Bn [TANDEM] Sätt Edit/Enscribe-formatflaggor: bit0=ingen delimiter, bit1=LF istället för CR/LF, bit2=space-fylla, bit3=trimma spaces, bit8=force 30K read.
-b PATH / --temp-path PATH Använd angiven temporär plats för arbetsarkiv. Nyttigt om källfilsystemet saknar utrymme för både gammalt och nytt arkiv samtidigt.
-c / --entry-comments Fråga efter enradiga kommentarer för varje fil. Operationen körs först, sedan frågas efter kommentarer.
-C / --preserve-case [VMS] Bevara skiftläge (alla) på VMS. -C- nedkonverterar.
-C2 / --preserve-case-2 [VMS] Bevara skiftläge (ODS2). -C2- nedkonverterar.
-C5 / --preserve-case-5 [VMS] Bevara skiftläge (ODS5). -C5- nedkonverterar.
-d / --delete Ta bort poster ur ett arkiv. Mönster matchar arkivets interna vägar. På MSDOS är matchning skiftlägeskänslig (se -ic för att ignorera skiftläge).
-db / --display-bytes Visa löpande antal bearbetade byte (zippade och kvar).
-dc / --display-counts Visa räknare för poster bearbetade och kvar.
-dd / --display-dots Visa ”prickar” medan varje post komprimeras. Standard: en prick per 10 MB. Även -v visar prickar. Prickstorlek styrs av -ds.
-df / --datafork [MacOS] Endast data-fork lagras (ej resource fork). Bra för export till andra OS.
-dg / --display-globaldots Visa progressprickar för hela arkivet istället för per fil. Kombinera med t.ex. zip -qdgds 10m för tyst + prickar var 10 MB.
-ds SIZE / --dot-size SIZE Sätt intervall för prickar (t.ex. 100k, 10m, 1g). 0 stänger av prickar. Påverkar även -v. Gäller inte ”Scanning files”-prickar.
-du / --display-usize Visa okomprimerad storlek per post.
-dv / --display-volume Visa volym-/disknummer för läsning/skrivning när arkiv läses/skrivs (t.ex. split).
-D / --no-dir-entries Skapa inte separata katalogposter i arkivet (standard är att skapa dem för att spara attribut). Kan sättas som standard via ZIPOPT.
-DF / --difference-archive Skapa ett differensarkiv med nya/förändrade filer sedan originalarkivet skapades (jämför storlek och tid). Kör i samma katalog med samma inlista som originalet. Kräver korrekt TZ.
-e / --encrypt Kryptera innehåll. Lösenord efterfrågas två gånger (tyst). Standardkryptering är relativt svag – använd starkare kryptering (PGP) för känsligt material.
-E / --longnames [OS/2] Använd .LONGNAME-extended attribute som filnamn.
-f / --freshen ”Fräscha upp”: ersätt endast filer som redan finns i arkivet och är äldre än källan. Lägger inte till nya filer. Kräver korrekt TZ.
-F / --fix Försök reparera arkivet när centralkatalogen finns delvis. Hoppar över inkonsistenta poster; resultatet ska vara giltigt.
-FF / --fixfix Hårdare reparation: skanna från början efter signaturer. Krävs om arkivet är kraftigt skadat eller avklippt i slutet. Kan skapa inkonsekvent arkiv – kör därefter -F.
-FI / --fifo [Unix] Läs även FIFOs (named pipes). Som standard hoppas FIFOs över (risk för hängning).
-FS / --filesync Synkronisera arkivet mot filsystemet: kopiera oförändrade poster, recomprimera ändrade, och TA BORT poster som saknar motsvarighet på disk. Kör i samma rot som vid skapande så relativa sökvägar matchar. Använd --out om originalet inte får ändras. Kräver korrekt TZ.
-g / --grow ”Väx”: lägg till i befintligt arkiv istället för att skapa nytt. Om operationen misslyckas försöker zip återställa. Ignoreras om någon post måste uppdateras/ta bortas.
-h / -? / --help Visa hjälp (utan argument visar zip hjälp; med endast -v visas versionsinfo, se -v).
-h2 / --more-help Utökad hjälp om kommandorad, mönstermatchning och ovanliga flaggor.
-i MÖNSTER… / --include MÖNSTER… Inkludera endast filer som matchar mönstren (matchning sker på arkivets interna vägar). Lista kan avslutas med ett ensamt ”@”. Jokertecken kräver escapning på Unix-skal.
-I / --no-image [Acorn RISC OS] Skanna inte igenom ”Image files” (t.ex. DOS-partitioner eller Spark-arkiv); lagra dem som enstaka filer.
-ic / --ignore-case [VMS, WIN32] Ignorera skiftläge även vid matchning mot arkivposter (t.ex. -f, -d, -U). Kan orsaka att flera poster matchas.
-j / --junk-paths Släng sökvägar: bara filnamn lagras (katalogposter skapas inte).
-jj / --absolute-path [MacOS] Lagra full sökväg inkl. volymnamn. Standard är relativ sökväg.
-J / --junk-sfx Ta bort ett förprependat SFX-stub (”preamble”) från arkivet.
-k / --DOS-names Försök konvertera namn/sökvägar till DOS-kompatibla, spara endast DOS-attribut och markera posten som skapad på MSDOS (för kompatibilitet med äldre PKUNZIP).
-l / --to-crlf Översätt Unix LF → MSDOS CRLF (textfiler; använd inte på binärfiler). Läggs till extra CR om filen redan har CRLF för att möjliggöra exakt återställning med unzip -a.
-la / --log-append Append till befintlig loggfil (standard är overwrite).
-lf PATH / --logfile-path PATH Skriv logg till fil. Med -la appendas. Med -li inkluderas informationsmeddelanden; annars bara varningar/fel samt avslutande status.
-li / --log-info Skriv även informationsmeddelanden till loggfilen (filnamn, framsteg m.m.).
-ll / --from-crlf Översätt MSDOS CRLF → Unix LF (textfiler; inte på binärfiler). Kontrollerar första bufferten för binärt innehåll och hoppar då över konvertering. Nyare detektering stöder UTF-8 m.fl.
-L / --license Visa licens för zip.
-m / --move Flytta: lägg till filer i arkivet och radera original efter lyckad arkivering. Rekommenderas tillsammans med -T (testa först).
-MM / --must-match Alla in-mönster måste matcha minst en fil och alla hittade filer måste vara läsbara. Annars avbryter zip direkt med felkod (OPEN/18) och inget arkiv skapas.
-n SUFFIXER / --suffixes SUFFIXER Komprimera inte filer med listade suffix (separerade med ”:” eller ”;”), de lagras ”store”. Standardlista inkluderar .Z .zip .zoo .arc .lzh .arj. -9 försöker komprimera alla oavsett suffix. På RISC OS är suffix = filtyper (hex).
-nw / --no-wild Ingen intern jokerteckenexpansion (skalet kan dock expandera om inte escapat). Bra vid läsning av färdiga sökvägslistor.
-N / --notes [Amiga, MacOS] Spara filnoter som zip-kommentarer (kan återställas med unzip -N). Med -c frågas bara för filer utan filnot.
-o / --latest-time Sätt arkivets mtime till den senaste mtime bland posterna. Kan användas fristående. Kräver korrekt TZ för jämförelser.
-O FIL / --output-file FIL / --out FIL Skriv förändrat arkiv till ny fil istället för att uppdatera originalet (krävs för att uppdatera split-arkiv). Kan även användas för att konvertera split-storlek (t.ex. -s 2g in.zip --out out.zip) eller slå ihop (-s 0).
-p / --paths Inkludera relativa sökvägar (standard). -j slänger sökvägar.
-P LÖSEN / --password LÖSEN Använd angivet lösenord (osäkert – synligt i processlistor, loggar m.m.). Föredra interaktiv inmatning eller starkare kryptering.
-q / --quiet Tyst läge: inga informationsmeddelanden eller kommentarsfrågor (nyttigt i skript/bakgrund).
-Qn / --Q-flag n [QDOS] Lagra QDOS-huvudinfo: bit0=lägg ej till headers, bit1=lägg till för alla, bit2=välj bort ”tryck tangent vid avslut”.
-r / --recurse-paths Rekursivt: gå ned i katalogträd och lägg till allt (även filer som börjar med ”.” då expansion inte görs av skalet). Använd -i/-x för att välja subset.
-R / --recurse-patterns Rekursiv matchning från nuvarande katalog baserad på mönster (på arkivets interna vägar), t.ex. zip -R foo "*.c".
-RE / --regex [WIN32] Återaktivera [ ]-matchning (regex-liknande) på Windows (avstängd som standard p.g.a. förväxling med filnamn som innehåller [ eller ]).
-s N / --split-size N Skapa split-arkiv och sätt delstorlek (heltal + valfri multiplikator k/m/g/t; default m). Skapar ARCHIVE.z01, .z02, …, .zip. -s 0 eller negation slår ihop. Uppdateringar görs via --out.
-sb / --split-bell Ring ”bell” vid paus för varje ny split (kräver -sp).
-sc / --show-command Visa den tolkade kommandoraden (inkl. ZIPOPT) och avsluta. Hjälper att förstå hur argument permuteras/sammansmälts.
-sf / --show-files Visa vilka filer som skulle bearbetas och avsluta. Med -sf- skrivs endast till öppen loggfil.
-so / --show-options Visa alla tillgängliga flaggor på denna byggda binär (avläser intern optionstabell).
-sp / --split-pause Split med paus: skriv varje del sekventiellt och pausa för media-byte. Använder streamformat som vissa unzippar kan ha problem med – testa innan produktion. Konvertera till standard med --out.
-su / --show-unicode Som -sf men visa även Unicode-versionen av sökvägen om den finns.
-sU / --show-just-unicode Visa endast Unicode-sökvägen om den finns, annars standardvarianten.
-sv / --split-verbose Extra information vid split (hur uppdelning sker).
-S / --system-hidden [MSDOS/OS2/WIN32/ATARI] Inkludera system- och dolda filer. [MacOS] Inkludera ”finder invisible”.
-t MMDDYYYY / --from-date MMDDYYYY Bearbeta endast filer ändrade på eller efter datumet. Även ISO 8601 YYYY-MM-DD. Kräver korrekt TZ.
-tt MMDDYYYY / --before-date MMDDYYYY Bearbeta endast filer ändrade före datumet. Även ISO 8601 YYYY-MM-DD. Kräver korrekt TZ.
-T / --test Testa det nya arkivet. Om testet misslyckas lämnas det gamla arkivet orört och -m tar inte bort källfiler.
-TT CMD / --unzip-command CMD Använd kommando CMD istället för unzip -tqq vid test (-T). {} ersätts med temporär arkivfil; annars läggs filnamn sist.
-u / --update Uppdatera: ersätt poster som är äldre än källan och lägg till nya. -u utan argument beter sig som -f.
-U / --copy-entries Kopiera utvalda poster från in-arkiv till nytt arkiv (kräver --out). Mönstren matchar ENDAST arkivets poster (fil­systemet läses inte). Bra för att ändra split-storlek eller filtrera. Kryptering/dekryptering stöds ej i copy-läge (använd zipcloak).
-UN v / --unicode v Styr hur Unicode-sökvägar hanteras vid mismatch mellan lokal och UTF-8: q=avsluta, w=varna (standard), i=ignorera, n=använd ej Unicode, e=escapa icke-ASCII (#Uxxxx/#Lxxxxxx), u=lagra UTF-8 som ”native”.
-v / --verbose Verbos: visa prickar (10 MB default, styrs av -ds), rapportera zip-strukturens egenheter. Om -v är enda argumentet skrivs diagnostik/version (kan omdirigeras till fil).
-V / --VMS-portable [VMS] Spara VMS-attribut (Stream_LF och rena binärer extraheras normalt på icke-VMS; indexerade/varlängd kan se korrupta ut).
-VV / --VMS-specific [VMS] Spara VMS-attribut och alla allokerade block (inkl. data efter EOF). Nästan alla filer ser korrupta ut utanför VMS.
-w / --VMS-versions [VMS] Bifoga versionsnummer (flera versioner lagras). Standard: endast senaste.
-ww / --VMS-dot-versions [VMS] Bifoga versionsnummer med .nnn-format.
-ws / --wild-stop-dirs Jokertecken matchar inte över katalognivåer. Använd ** för att matcha över gränser. Utan -ws matchar /foo/bar/* både /foo/bar/file och /foo/bar/dir/file.
-x MÖNSTER… / --exclude MÖNSTER… Exkludera mönster (matchning mot interna vägar). Listor kan läsas via @fil. Escapa jokertecken på skal som expanderar.
-X / --no-extra Spara inte extra-attribut (EA på OS/2, uid/gid/tider på Unix). Endast Unicode- och Zip64-extra fält sparas. -X- inkluderar default extra OCH kopierar okända extra-fält.
-y / --symlinks [Unix/VMS≥8.3] Lagra symboliska länkar som länkar istället för att följa dem (undviker dubbletter).
-z / --archive-comment Arkivkommentar för hela arkivet (multirad; avsluta med en rad med endast ”.”, eller EOF). Kan också läsas från fil: zip -z foo < kommentar.txt.
-Z METOD / --compression-method METOD Sätt metod: store (ingen kompr, motsv. -0), deflate (standard), bzip2 (om kompilerat in; metod 12 – stöd varierar). zip -Z bzip2 foo bar.c.
-0 … -9 Komprimeringsnivå: -0=ingen (store), -1=snabb, … -9=bäst (standard -6). Påverkar främst deflate.
-! / --use-privileges [WIN32] Använd tilldelade privilegier för att läsa alla aspekter av NT-säkerhet.
-@ / --names-stdin Läs listan av indatafiler från standard in, en fil per rad.
-$ / --volume-label [MSDOS/OS2/WIN32] Inkludera volymetikett för enheten där första filen finns. För att endast ta med etiketten eller styra enhet: ange enhetsnamnet som första ”fil” (t.ex. zip -$ foo a: c:bar).

Exempel

Enkelt:

zip stuff *

Skapar stuff.zip av alla filer i aktuell katalog (ej ”.”-filer på Unix, använd zip stuff .* * för att inkludera dem).

Hela en katalog:

zip -r foo foo

Utan katalognamnet (”junk paths”):

zip -j foo foo/*

Lite i taget när utrymmet är snålt (och flytta efteråt):

zip -rm foo foo/tom
zip -rm foo foo/dick
zip -rm foo foo/harry

Split-arkiv (t.ex. 2 GB-delar):

zip -s 2g -r split.zip foo

Uppdatera split-arkiv genom att skriva nytt arkiv:

zip inarchive.zip foo.c bar.c --out outarchive.zip

Lista filer via find:

find . -name "*.[ch]" -print | zip source -@

Streama via tar:

tar cf - . | zip backup -
unzip -p backup | tar xf -

Mönstermatchning (Unix)

Skal (sh/csh/bash) expanderar normalt ?, *, [] före zip. Escapa med ”\” eller citattecken för att låta zip matcha mot arkivets interna vägar. Exempel:

zip archive "*.[hc]"     # matchar .h och .c
zip archive "[a-f]*"     # filer som börjar a–f
zip archive "*.[!o]"     # allt som inte slutar på .o

På WIN32 måste []-matchning aktiveras med -RE. För -i/-x/-R/-d/-U ska jokertecken nästan alltid escapas.

Miljövariabler

ZIPOPT
Standardflaggor som infogas efter zip i kommandoraden.
ZIP
(ej RISC OS/VMS) alias för ZIPOPT.
Zip$Options, Zip$Exts
[RISC OS] standardflaggor respektive extensionhantering.
ZIP_OPTS
[VMS] som ZIPOPT.

Diagnostik

Returvärden (ungefär PKWARE):

0
OK.
2
Oväntat arkivslut.
3
Generiskt zipformatfel (bearbetning kan ändå ha lyckats).
4
Kunde inte allokera minne.
5
Allvarligt zipformatfel (troligen stop).
6
Post för stor (utan Zip64) / för stor för zipsplit.
7
Ogiltigt kommentarsformat.
8
zip -T misslyckades eller minne slut.
9
Avbruten av användare (Ctrl-C).
10
Fel vid användning av temporärfil.
11
Läs-/sökfel.
12
Inget att göra.
13
Saknat eller tomt zip-arkiv.
14
Skrivfel.
15
Kunde inte skapa fil att skriva till.
16
Felaktiga kommandoradsparametrar.
18
Kunde inte öppna specificerad fil för läsning.
19
Kompilerad med alternativ som inte stöds på detta system.

[VMS] mappar Unix/PC-returvärden till VMS-stil (Facility 1955, Code=2*Unix_status, Severity enligt ziperr.h).

Buggar

zip 3.0 är inte kompatibelt med PKUNZIP 1.10 (använd zip 1.1 om sådan kompatibilitet krävs). Uppdatera inte zip 3.0-arkiv med zip 1.1/PKZIP 1.10 om de innehåller krypterade medlemmar eller har skapats via pipe/oseekbar enhet (felaktigt format). Vissa VMS-format hanteras inte; använd stream-LF eller konvertera. OS/2 har begränsningar i DosFindFirst/Next för tecken som ”!” och ”#”.

Författare

Copyright © 1990–2008 Info-ZIP (Mark Adler, Richard B. Wales, Jean-loup Gailly, Onno van der Linden, Kai Uwe Rommel, Igor Mandrichenko, John Bush, Paul Kienitz m.fl.). Distribueras under Info-ZIP-licens. Se projektsidan för felrapporter (inkl. zip -v-utskrift, byggflaggor, OS-version m.m.).

Tack

Tack till R. P. Byrne (Shrink.Pas), Phil Katz (ZIP-formatet), Steve Burg (deflate-klargöranden), Haruhiko Okumura & Leonid Broukhis (idéer), Keith Petersen, Rich Wales, Hunter Goatley, Mark Adler (lista/ftp) och testare i Info-ZIP-gruppen. Manualsidan omskriven för Unix av R. P. C. Rodgers, uppdaterad av E. Gordon för zip 3.0.

Se även

compress(1), shar(1), tar(1), unzip(1), gzip(1)

Refereras av

7z(1), 7za(1), archivemount(1), ark(1), cboard(6), gzip(1), libarchive-formats(5), lrunzip(1), lrzcat(1), lrzip(1), lrztar(1), lrzuntar(1), pbzip2(1), stone(3), unzipsfx(1), zipcloak(1), zipnote(1), zipsplit(1)

Sidslut

Orginalhemsidan på Engelska : https://linux.die.net/man/1/zip 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.