Manpages

NIMI

zip, zipcloak, zipnote, zipsplit − arkistoi ja pakkaa tiedostoja

YLEISKATSAUS

zip [−AcdDeEfFghjklLmoqrSTuvVwXyz@$] [−b polku] [−n tarkentimet] [−t kkppvv] [ ziptiedosto [ tiedosto1 tiedosto2 ...]] [−xi lista]

zipcloak [−dhL] [−b polku] ziptiedosto

zipnote [−hwL] [−b polku] ziptiedosto

zipsplit [−hiLpst] [−n koko] [−b polku] ziptiedosto

KUVAUS

zip on tiedostojen pakkausohjelma Unixille, VMS:lle, MSDOS:lle, OS/2:lle, Windows NT:lle, Minixille, Atarille ja Macintosheille. Se on vastaava kuin UNIX-komentojen yhdistelmä tar(1) sekä compress(1) ja on yhteensopiva PKZIP:in kanssa (Phil Katzin ZIP MSDOS-järjestelmille).

Rinnakkaisohjelma (unzip(1L)) purkaa zip-arkistot. zip- ja unzip(1L) -ohjelmat pystyvät käsittelemään arkistoa, joka on tehty PKZIP:illa, ja PKZIP sekä PKUNZIP voivat käsitellä arkistoa, joka on tehty ohjelmalla zip. zip Versio 2.1 on yhteensopiva PKZIP 2.04:n kanssa. Huomaa että PKUNZIP 1.10 ei kykene purkamaan tiedostoja, jotka ovat pakattu ohjelmilla PKZIP 2.04 tai zip 2.1. Sinun tulee käyttää ohjelmaa PKUNZIP 2.04g tai unzip 5.0p1 (tai myöhempiä versioita) purkaaksesi sen.

Lyhyen avustuksen ohjelmista zip ja unzip saat käynnistämällä kummankin ohjelman ilman minkäänlaista parametriä.

Ohjelma on hyödyllinen, kun haluat pakata tiedostoja levitystä varten, arkistoit tiedostoja tai säästät levytilaa tilapäisesti pakkaamalla harvoin käytettyjä tiedostoja tai hakemistoja.

zip-ohjelma pakkaa yhden tai useamman tiedoston yhdeksi zip-arkistoksi, mukaanlukien tietoja tiedostoista (nimi, polku, päiväys, milloin viimeksi muutettu, suojaus ja tarkastustiedon, jolla tarkistetaan tiedoston eheys). Kokonainen hakemisto voidaan pakata zip-arkistoksi yhdellä komennolla. Pakkauksen suhteet välillä 2:1 ja 3:1 ovat yleisiä tekstitiedostoille. zip-ohjelmalla on yksi pakkausmenetelmä (deflation) ja se voi myös varastoida tiedostoja ilman pakkausta. zip valitsee automaattisesti paremman näistä kahdesta jokaiselle tiedostolle, jota arkistoidaan.

Annettaessa kohteeksi jo olemassa oleva zip-arkisto, zip korvaa identtisesti nimetyt tiedostot zip-arkistoon tai lisää uudet tiedostot. Esimerkiksi, jos foo.zip on olemassa ja sisältää tiedostot foo/file1 ja foo/file2 sekä hakemisto foo sisältää tiedostot foo/file1 ja foo/file3, silloin:

zip -r foo foo

korvaa tiedoston foo/file1 arkistossa foo.zip ja lisää tiedoston foo/file3 arkistoon foo.zip. Tämän jälkeen foo.zip sisältää tiedostot foo/file1, foo/file2 ja foo/file3, joista foo/file2 on säilynyt muuttumattomana aikaisemmasta.

Jos tiedostolista on mainittu näin: −@, zip ottaa listan syötetyistä tiedostoista standardisyötteestä. UNIXissa tätä vaihtoehtoa voidaan käyttää tehokkaasti find(1) -komennon kanssa. Esimerkiksi arkistoidaksesi kaikki C-lähdekoodit oletushakemistossa ja sen alihakemistoissa, komenna:

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

(huomaa, että lainausmerkit pitää olla suojana, jotta laajentumista ei tapahdu). zip hyväksyy myös yksittäisen viivan ("-") zip-tiedoston nimeksi, jolloin ohjelma kirjoittaa zip-tiedoston standarditulosteeseen, joka voidaan putkittaa toiselle ohjelmalle. Esimerkiksi

zip -r - . | dd of=/dev/nrst0 obs=16k

kirjoittaisi tulosteen suoraan nauhalle määrittäen samalla blokin koon tarkoituksena varmuuskopioida kyseinen hakemisto.

zip hyväksyy myös viivan ("-") pakattavan tiedoston nimeksi, jonka johdosta ohjelma lukee sen standardisyötteeltä, sallien zipin ottavan syötteen muulta ohjelmalta. Esimerkiksi:

tar cf - . | zip backup -

pakkaisi tar-komennon tulosteen tarkoituksena varmuuskopioida kyseinen hakemisto. Tämä yleisesti tuottaa paremman pakkauksen kuin aiempi esimerkki käyttäen -r vaihtoehtoa, koska zip voi poistaa toistuvan tiedon, jota on tiedostojen välillä. Varmuuskopio voidaan palauttaa käyttämällä komentoa

unzip -p backup | tar xf -

Jos zip-tiedoston nimeä ei anneta ja stdout ei ole pääte, zip toimii suodattimena, pakaten standardisyötteen standarditulosteeseen. Esimerkiksi,

tar cf - . | zip | dd of=/dev/nrst0 obs=16k

on vastaava kuin

tar cf - . | zip - - | dd of=/dev/nrst0 obs=16k

zip-arkistot, jotka ovat luotu tällä tavalla, voidaan purkaa ohjelmalla funzip joka on mukana unzip-paketissa, tai ohjelmalla gunzip , joka on mukana gzip-paketissa. Esimerkiksi:

dd if=/dev/nrst0 ibs=16k | funzip | tar xvf -

Muutettaessa jo olemassa olevaa zip-arkistoa, zip tekee väliaikaisen tiedoston uusilla sisällöillä ja korvaa vanhan, kun uuden version luonti on suoritettu loppuun ilman virheilmoitusta.

Jos zip-tiedoston nimi ei sisällä päätettä, oletuspäätteeksi tulee .zip. Jos tiedostonnimi on joku muu kuin .zip, olemassa oleva pääte pysyy muuttumattomana.

OPTIOT

−A

Itsestään purkautuvien tiedostojen säätö. Itsestään purkautuva arkisto luodaan lisäämällä SFX-ohjelma jo olemassaolevaan arkistoon. Optio −A kertoo zip:lle, että sen pitää säätää arkiston osien osoitetietoja, jotka ovat varastoitu arkistoon, ottaakseen huomioon tämän "lisätyn" osuuden.

−b polku

Käytä määriteltyä polkua zip-arkiston välivarastona. Esimerkiksi:

zip -b /tmp stuff *

ohjaa väliaikaisen zip-arkiston hakemistoon /tmp, ja kirjoittaa tiedoston stuff.zip oletushakemistoon vasta, kun arkisto on valmis. Tämä vaihtoehto on hyödyksi vain, jos päivitetään olemassa olevaa arkistoa, jonka tiedostojärjestelmällä ei ole tarpeeksi tilaa säilyttämään uutta ja vanhaa arkistoa samaan aikaan.

−c

Lisää yhden rivin kommentin jokaiseen tiedostoon. Tiedostotoiminnot (lisäys, päivitys) tehdään ensin, jonka jälkeen käyttäjältä kysytään kommenttia jokaiselle tiedostolle erikseen. Kirjoita kommentti ja paina enter, tai paina vain enter, jos et halua lisätä kommenttia tiedostoon.

−d

Poista (tuhoa) tiedostoja zip -arkistosta. Esimerkiksi:

zip -d foo foo/tom/junk foo/harry/\* \*.o

poistaa tiedoston foo/tom/junk, kaikki tiedostot, jotka alkavat: foo/harry/ sekä kaikki tiedostot jotka päättyvät: .o (millä polulla tahansa). Huomaa, että komentotulkin tekemä tiedostonimien laajentaminen on estetty kenoviivoilla, jonka johdosta zip näkee tähden ja zip käsittelee zip-arkiston sisältöä oletushakemiston sisällön sijaan.

MSDOS:ssa −d on merkkikokoherkkä, kun yritetään löytää nimiä zip-arkistosta. Tämä vaatii, että tiedostonnimet nimetään isoilla kirjaimilla, jos ne olivat pakattu PKZIP:llä MSDOS-järjestelmässä.

−D

Älä tee hakemistoja zip-arkistoon. Hakemistot luodaan oletuksena, jotta niiden attribuutit voidaan tallentaa zip-arkistoon. Ympäristömuuttujaa ZIPOPT voidaan käyttää oletusarvojen muuttamisessa. Esimerkiksi Unixissa ohjelmalla sh:

ZIPOPT="-D"; export ZIPOPT

(Muuttujan ZIPOPT kautta voidaan välittää kaikki muut optiot paitsi −i ja −x ja se voi sisältää useita optioita.) Optio −D on lyhyt vaihtoehto optiolle −x "*/" mutta jälkimmäistä ei voida välittää ympäristömuuttujassa ZIPOPT.

−e

Salaa zip-arkiston käyttäen salasanaa, joka syötetään näppäimistöltä ilmestyvälle kehotteelle (sitä ei tulosteta näytölle; jos virhetuloste ei ole tty, zip lopettaa virheen kanssa). Salasanaa kysytään uudelleen, jotta virhelyöntien mahdollisuus poistuisi.

−f

Korvaa (virkistää) olemassa olevan tiedoston zip-arkistossa vain, jos sitä on muutettu myöhemmin kuin versiota, joka on jo zip-arkistossa. Toisin kuin päivitysoptio (−u) tämä ei lisää tiedostoja, jotka eivät ole jo zip-arkistossa. Esimerkiksi:

zip -f foo

Tämä komento pitäisi suorittaa samasta hakemistosta, josta alkuperäinen zip komento oli suoritettu, koska varastoidut polut zip-arkistoissa ovat aina suhteellisia.

Huomaa, että aikavyöhykkeen ympäristömuutuja TZ pitäisi olla asetettu paikalliseen aikavyöhykkeeseen, jotta -f , -u ja -o optiot voisivat toimia oikein.

Tämän syyt ovat hiuksenhienoja, mutta johtuvat Unixin tavasta tallettaa aika (aina GMT) ja useimpien muiden käyttöjärjestelmien tavasta (aina paikallinen aika) ja näiden kahden vertailun tarpeesta. Tyypillinen TZ-arvo on ’’MET-1METDST’’ (Keski-Euroopan aika kesäaikakorjauksella).

−F

Korjaa zip-arkisto. Tätä optiota voidaan käyttää, jos jotkut osat puuttuvat arkistosta.

Jos optio tuplataan, kuten −FF, sellaisiin pakkauskokoihin ei luoteta, jotka on annettu vahingoittuneen arkiston sisällä vaan zip skannaa erityistunnuksia tunnistaakseen arkiston jäsenien rajoja. Yksittäinen −F on luotettavampi, jos arkisto on vain vähäisesti vahingoittunut. Esimerkiksi jos arkisto on vain katkaistu, kokeile tätä optiota ensin.

Kumpikin optio elvyttää arkistot, jotka ovat virheellisesti siirretty ascii-moodilla binäärin sijaan. Korjauksen jälkeen −t optio ohjelmassa unzip voi näyttää joidenkin tiedostojen sisältävän vahingoittuneen CRC:n. Tämänlaisia tiedostoja ei voida palauttaa; voit poistaa ne arkistosta käyttämällä −d-optiota zip-ohjelman kanssa.

−g

Kasvattaa (liittää) zip-arkistoon, uuden arkiston luomisen sijaan. Jos toiminto epäonnistuu, zip yrittää palauttaa arkiston sen alkuperäiseen muotoon. Jos palautus epäonnistuu, arkisto voi vioittua.

−h

Näytä zip ohjelman ohjeteksti (tämä toiminto saadaan myös ajamalla ohjelma zip ilman mitään optioita).

−i tiedostot

Liittää vain mainitut tiedostot, kuten:

zip -r foo . -i \*.c

joka lisää vain tiedostot, jotka päättyvät .c-päätteeseen oletushakemistossa ja alihakemistoissa (huomautus PKZIP:n käyttäjille: vastaava komento on

pkzip -rP foo *.c

PKZIP ei salli rekursiota muissa hakemistoissa kuin siinä, jossa olet.) Kenoviiva välttää komentotulkin tiedostonimien laajennoksen, jonka johdosta zip hakee tiedostoja myös alihakemistoista.

−j

Varastoi vain tiedoston nimen (hylkää polun), eikä tallenna hakemistojen nimiä. Oletuksena zip varastoi koko polun (suhteessa oletushakemistoon).

−J

Poistaa lisätyn osan (esimerkiksi SFX-ohjelman) arkistosta.

−k

Yrittää muuntaa nimet ja polut MSDOS:n tapaan, varastoi vain MSDOS:n attribuutit (vain käyttäjän kirjoitusoikeus UNIX:sta), ja merkitsee merkinnän MSDOS:n alla tehdyksi (vaikka se ei olisikaan). Tämä parantaa PKUNZIP-yhteensopivuutta, joka ei MSDOS:ssa voi käsitellä tiettyjä nimiä, kuten kahdella pisteellä varustetut.

−l

Käännä Unixin rivinvaihtomerkki LF MSDOS:n käyttämiin merkkeihin CR LF. Tätä optiota ei pitäisi käyttää binääritiedostoissa. Tätä optiota voidaan käyttää Unixissa, jos zip-tiedosto on tarkoitettu PKUNZIP:lle MSDOS:ssa. Jos syötetyt tiedostot sisältävät jo merkit CR LF, tämä optio lisää ylimääräisen CR-merkin. Tämä varmistaa, että unzip -a Unixissa saa takaisin tarkan kopion alkuperäisesta tiedostosta, kumotakseen zip -l -komennon vaikutuksen.

−ll

Kääntää MSDOS:n rivinvaihtomerkit CR LF Unixin LF-merkiksi. Tätä optiota ei pitäisi käyttää binääritiedostoihin. Tätä optiota voidaan käyttää MSDOS:ssa, jos zip-tiedosto on tarkoitettu purettavaksi Unixissa.

−L

Näyttää ohjelman zip lisenssin.

−m

Siirtää mainitut tiedostot zip-arkistoon. Oikeastaan tämä tuhoaa kohdehakemistot/tiedostot, kun se on tehnyt mainitun zip-arkiston. Jos hakemistosta tulee tyhjä tiedostojen poistamisen jälkeen, hakemisto poistetaan myös. Mitään ei tuhota ennen kuin zip-arkisto on luotu onnistuneesti. Tämä on hyödyllinen säästettäessä levytilaa, mutta mahdollisesti vaarallinen, joten tätä suositellaan käytettäväksi yhdessä option −T kanssa, joka testaa arkiston ennen kuin tiedostoja poistetaan.

−n tarkentimet

Ei yritä pakata tiedostoja, joissa on syötetty tarkennin. Nämä tiedostot vain varastoidaan (0% pakattu) annettuun zip-tiedostoon. Tarkoitus on, ettei zip tuhlaa aikaa yrittäessään pakata niitä. Tarkentimet erotellaan toisistaan joko kaksoispisteellä tai puolipisteellä. Esimerkiksi:

zip -rn .Z:.zip:.tiff:.gif:.snd foo foo

kopioi kaiken hakemistosta foo tiedostoon foo.zip, mutta vain varastoi tiedostot, jotka päättyvät tarkentimin .Z, .zip, .tiff, .gif tai .snd ilman pakkaamista (kuva- ja äänitiedostoilla on usein omat erikoistuneet pakkausmenetelmät). Oletuksena zip ei pakkaa tiedostoja joiden pääte on listassa .Z:.zip:.zoo:.arc:.lzh:.arj. Nämä tiedostot varastoidaan suoraan annettuun arkistoon. Ympäristömuuttujaa ZIPOPT voidaan käyttää vaihdettaessa oletusoptioita. Esimerkiksi Unixin alla sh:lla

setenv ZIPOPT "-n .gif:.zip"

Yrittääksesi pakkausta kaikkien tiedostojen kohdalla, käytä:

zip -n : foo

Myös suurin mahdollinen pakkausoptio −9 yrittää pakkausta jokaiselle tiedostolle huolimatta tiedostojen päätteistä.

−o

asettaa "last modified" -ajan zip arkistossa viimeisimpään (vanhimpaan) "last modified" -aikaan, jonka se löytää zip arkiston merkinnöistä. Tätä voidaan käyttää ilman muita toimintoja, jos halutaan.

zip -o foo

muuttaa arkiston foo.zip viimeksi muokatun ajan uusimpaan tiedoston aikaleimaan arkistossa foo.zip.

−q

Mykkä-moodi; eliminoi informatiiviset ilmoitukset ja komentokehoitteet. (Hyödyllinen esimerkiksi komentojonoissa ja tausta-ajoissa).

−r

Käsittelee hakemistorakenteen rekursiivisesti; esimerkiksi:

zip -r foo foo

Tässä tapauksessa kaikki tiedostot ja alihakemistot foo-hakemistossa tallennetaan zip-arkistoon, joka nimetään foo.zip, sisältäen tiedostot, joiden nimi alkaa merkillä ".", koska rekursio ei käytä komentotulkin tiedostonimien laajentamista. Jos haluat liittää vain tietyt tiedostot hakemistossa foo ja sen alihakemistoissa, käytä −i-optiota määritelläksesi liitettävien tiedostojen kuvion. Sinun ei pitäisi käyttää optiota −r nimen ".*" kanssa, koska siihen sisältyy "..", joka yrittäisi pakata ylempää hakemistoa (jota ei luultavasti haluta).

−S

Pakkaa järjestelmätiedostot ja piilotiedostot. Tämä optio on käytössä vain joissain järjestelmissä; sitä ei huomioida Unixissa.

−t kkppvv

Ei käsittele tiedostoja, joita on muutettu mainittua päiväystä aikaisemmin. kk on kuukausi (0-12), pp on kuukauden päivä (1-31), ja vv ovat vuoden kaksi viimeistä lukua. Esimerkiksi:

zip -rt 120791 infamy foo

lisää tiedostot hakemistossa foo ja sen alihakemistoissa zip-arkistoon infamy.zip, jos niitä on muutettu 7. joulukuuta 1991 tai myöhemmin.

−T

Testaa uuden tiedoston eheyttä. Jos testaus epäonnistuu, vanha zip-tiedosto pysyy muuttumattomana eikä (jos mukana on -m-optio) mitään syötettyjä tiedostoja poisteta.

−u

Korvaa (päivittää) olemassa olevan tiedoston zip-arkistossa vain, jos sitä on muutettu myöhemmin kuin versiota, joka jo on zip-arkistossa. Esimerkiksi:

zip -u stuff *

lisää mitkä tahansa uudet tiedostot oletushakemistossa ja päivittää mitkä tahansa tiedostot, jotka ovat muuttuneet sen jälkeen, kun zip-arkistoa stuff.zip on viimeksi muutettu (huomaa, että zip ei yritä pakata tiedostoa stuff.zip itseensä, kun teet tämän).

Huomaa, että optio −u käyttäytyy ilman argumentteja kuin −f (virkistys) optio.

−v

Puhelias-moodi tai diagnostinen version tietojen tulostus.

Normaalisti toimintojen yhteydessä tämä optio mahdollistaa etenemismittarin näytön pakkauksen aikana ja tulostaa enemmän diagnostiikkaa zip-tiedoston omituisuuksista.

Kun −v on ainoa komennon argumentti, ja vakiosyötettä ei ole ohjattu tiedostoon, diagnostiikkaruutu näytetään. Ohjetekstin lisäksi, jossa on ohjelman nimi, versio ja julkaisupäivä, tämä tulostaa Info-ZIP:n Internet-osoitteen ja levityspaikkoja. Sen jälkeen näytetään tietoa kohdeympäristöstä (kääntäjän tyyppi ja versio, käyttöjärjestelmän versio, kääntämispäivämäärä ja mahdolliset optiot, joita käytetään luodessa itsestäänpurkautuvaa zip-arkistoa).

−V

Tallentaa VMS:n tiedostoattribuutit. Tämä optio on saatavilla vain VMS:ssä; zip-arkistot, jotka ovat luotu tällä optiolla, ovat yleisesti ottaen käyttökelvottomia muissa järjestelmissä.

−w

Liittää tiedoston versionumeron nimeen, liittäen moninkertaiset tiedostoversiot. (Vain VMS; oletus: käytä uusinta versiota mainittuun tiedostoon).

−x tiedostot

Jättää käsittelemättä mainitut tiedostot, kuten:

zip -r foo foo -x \*.o

joka pakkaa hakemiston foo sisällön tiedostoon foo.zip, mutta ei tiedostoja, joiden pääte on .o. Kenoviiva välttää komentotulkin tiedostonnimien laajennoksen, joten nimien etsinnän suorittaa zip kaikilla hakemistotasoilla.

−X

Ei tallenna ylimääräisiä tiedoston attribuutteja (laajennettuja attribuutteja OS/2:ssa, uid/gid ja tiedostojen aikoja Unixissa).

−y

Varastoi symboliset linkit sellaisenaan arkistoon linkkien osoittamien tiedostojen pakkaamisen ja varastoimisen sijaan (Vain UNIX).

−z

Pyydä monirivistä kommenttia koko zip-arkistolle. Kommentti päättyy riviin, joka sisältää vain pisteen, tai EOF (end of file) -merkin (^D Unixissa, ^Z MSDOS:ssa, OS/2:ssa ja VAX/VMS:ssa). Kommentti voidaan ottaa tiedostosta:

zip -z foo < foowhat

−#

Säätelee pakkaamisen vauhtia käyttäen tiettyä numeroa #, missä −0 merkitsee vain varastointia (ei pakkausta), −1 merkitsee nopeinta pakkausmenetelmää (vähemmän pakkausta) ja −9 merkitsee hitainta pakkausmenetelmää (optimaalinen pakkaus, pakkaa kaikki tiedostopäätteestä välittämättä). Oletuspakkauksen taso on −6.

−@

Ottaa listan pakattavista tiedostoista standardisyötteestä. Tiedostonnimet, jotka sisältävät välilyöntejä pitää eristää käyttäen yksittäisiä lainausmerkkeja, kuten ’tiedoston nimi’.

−$

Tallenna sen aseman nimiö, jolla ensimmäinen pakattava tiedosto on. Jos haluat lisätä vain nimiön tai pakottaa tietyn aseman, käytä aseman nimeä ensimmäisessä tiedostonnimessä, kuten:

zip -$ foo a: c:bar

Tämä optio on vain joissain järjestelmissä (MSDOS ja OS/2); sitä ei huomioida Unixissa.

ESIMERKKEJÄ

Yksinkertaisin esimerkki:

zip stuff *

luo arkiston stuff.zip (olettaen, että sitä ei vielä ole olemassa) ja laittaa kaikki tiedostot oletushakemistossa siihen, pakattuun muotoon (tarkennin .zip lisätään automaattisesti, jollei annetun arkiston nimi sisällä jo pistettä; tämä sallii muiden tarkentimien täsmällisen määrittelyn).

Tiedostoja, jotka alkavat merkillä ".", ei lisätä, johtuen komentotulkin tavasta laajentaa tiedostonnimet. Jos haluat lisätä myös pistealkuiset tiedostot, komenna:

zip stuff .* *

Tämäkään ei arkistoi alihakemistoja oletushakemistosta.

Pakataksesi koko hakemistopuun, anna komento:

zip -r foo foo

Tämä luo arkiston foo.zip, sisältäen kaikki tiedostot ja alihakemistot hakemistossa foo.

Haluat ehkä tehdä zip-arkiston, joka sisältää tiedostot hakemistossa foo ilman, että talletat myös hakemiston nimeä, foo. Voit käyttää −j-optiota jättääksesi polut pois, kuten:

zip -j foo foo/*

Jos levytilasi on loppumassa, et ehkä pysty säilyttämään alkuperäistä hakemistoa samaan aikaan pakatun zip-arkiston kanssa. Tässä tapauksessa voit luoda arkiston vaiheittain, käyttäen −m-optiota. Jos foo sisältää alihakemistot tom, dick ja harry, voit komentaa:

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

missä ensimmäinen komento luo tiedoston foo.zip ja seuraavat kaksi lisäävät siihen alihakemistoja. zip-komennon lopussa viimeksi luodun arkiston tiedostot tuhotaan, jolloin saadaan tilaa seuraavalle zip-komennon toiminnolle.

KUVIOON SOVITTAMINEN

Tämä osio on vain UNIXille.

UNIXin komentotulkit (sh(1) ja csh(1)) laajentavat tiedostonimet säännöllisten lausekkeiden avulla, joissa erikoismerkit ovat:

?

mikä tahansa yksittäinen merkki.

*

mitkä tahansa merkit (myös ei mitään).

[]

mikä tahansa merkki hakasulkeiden sisällä määritellyllä alueella (esimerkki: [a−f], [0−9]).

Kun nämä merkit kohdataan (ilman että suojana on kenoviivaa tai lainausmerkkejä), komentotulkki etsii oletushakemistosta tiedostoja, jotka sopivat kuvioon ja korvaa argumentin löydettyjen tiedostojen listalla.

zip voi tehdä saman nimien etsinnän zip-arkistossa tai jos kyseessä on −x (exclude) tai −i (include) -optiot, hakemistosta jolta toimitaan, kun käytetään kenoviivoja tai lainausmerkkeja, jolloin komentotulkki ei pääse tekemään laajennusta. Yleensä zip ensin etsii tiedostolistassa olevaa nimeä tiedostojärjestelmästä. Jos se ei löydä tiedostoa, se etsii nimeä zip-arkistosta, jota muokataan (jos se on olemassa), käyttäen soveltaen tiedostonimien laajentamista. Jokainen löytynyt tiedosto lisätään toimenpidelistaan, paitsi jos tämä nimi sopii nimeen, joka on annettu option −x yhteydessä, tai ei sovi mihinkään nimeen, joka on annettu −i optiolla.

Tiedostonimien laajentamisessa käsitellään myös polku ja sen takia kuviot, kuten \*.o vastaavat nimiä, jotka päättyvät ".o", huolimatta hakemistopolusta. Huomaa, että kenoviivan pitää edeltää jokaista erikoismerkkiä (esim. ?*[]), tai koko argumentti pitää suojata lainausmerkein ("").

Yleisesti ottaen käytä kenoviivaa saadaksesi zip-ohjelman tekemään tiedostonimilaajennuksen −f (virkistys) -option ja −d (poisto) -option kanssa, myöskin joskus −x (eristä) -option kanssa käytettäessä asiaankuuluvaa toimintoa (lisää, −u, −f, tai −d).

BUGIT

zip 2.1 ei ole yhteensopiva PKUNZIP 1.10:n kanssa. Käytä ohjelmaa zip 1.1 tuottaaksesi zip-tiedoston, joka voidaan purkaa PKUNZIP 1.10:lla.

zip-tiedostoja, jotka ovat luotu ohjelmalla zip 2.1, ei saa päivittää ohjelmalla zip 1.1 tai PKZIP 1.10, jos ne sisältävät salattuja tiedostoja tai jos ne ovat tuotettu putkessa tai ovat sarjasaantilaitteessa. Vanhat versiot ohjelmasta zip tai PKZIP loisivat arkiston, jolla on virheellinen muoto. Vanhat versiot voivat listata zip-tiedoston sisällön, mutta eivät voi purkaa niitä (uuden pakkausalgoritmin takia). Jos et käytä salausta ja käytät tavallisia levytiedostoja, sinun ei tarvitse huolehtia tästä ongelmasta.

VMS:ssä kaikkia omituisia tiedostomuotoja ei käsitellä oikein. Ainoastaan stream-LF formaatin zip-tiedostojen pitäisi toimia zip:n kanssa. Toiset voidaan muuntaa Rahul Dhesin BILF-ohjelmalla. Tämä versio ohjelmasta zip käsittelee joitakin muunnoksia sisäisesti. Käytettäessä Kermit-ohjelmaa siirtämään zip-tiedostoja VAX:ista MSDOS:in, kirjoita "set file type block" VAX:issa. Siirrettäessä MSDOS:sta VAX:iin, kirjoita "set file type fixed" VAX:ssa. Molemmissa tapauksissa, kirjoita "set file type binary" MSDOS:ssa.

VMS:ssa zip kaatuu tiedostomääritelmään, joka käyttää DECnet syntaksia foo::*.*.

OS/2:ssa zip ei löydä joitain nimiä, kuten niitä, jotka sisältävät huutomerkin tai risuaidan. Tämä on OS/2:n bugi: 32-bittinen DosFindFirst/Next ei löydä kyseisiä nimiä. Toisetkin ohjelmat, kuten GNU tar, kärsivät samasta vaivasta.

OS/2:ssa laajennettujen attribuuttien koko DIR-komennolla näytettynä (yhteensopivuuden takia) on sama, jonka 16-bittinen versio funktiosta DosQueryPatchInfo() palauttaa. Muutoin OS/2 1.3 ja 2.0 ilmoittaisivat erilaiset EA-koot. Toisaalta 32-bittinen DosQueryPathInfo() palauttaa hieman erilaisen rakenteen, jossa on ylimääräistä täytebittejä ja pointtereita (se on linkitetty lista), jotta kaikki kentät olisivat nelitavuisten sanojen rajoilla, yhteensopivuussyistä tuleviin OS/2:n RISC-versioihin. zip käyttää 32-bittistä muotoa ja eroaa siten DIR-komennon käsityksestä. zip varastoi 32-bittisen muodon, jopa 16-bittisellä MS-C:llä käännetty versio ajettuna OS/2 1.3:ssa, joten myös silloin näytetään 32-bittisen muodon koko.

Amigalla -A-optio ei tällä hetkellä toimi.

TEKIJÄT

Copyright (C) 1990-1996 Mark Adler, Richard B. Wales, Jean-loup Gailly, Onno van der Linden, Kai Uwe Rommel, Igor Mandrichenko, John Bush and Paul Kienitz. Permission is granted to any individual or institution to use, copy, or redistribute this software so long as all of the original files are included, that it is not sold for profit, and that this copyright notice is retained.

LIKE ANYTHING ELSE THAT’S FREE, ZIP AND ITS ASSOCIATED UTILITIES ARE PROVIDED AS IS AND COME WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. IN NO EVENT WILL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY DAMAGES RESULTING FROM THE USE OF THIS SOFTWARE.

Please send bug reports and comments by email to: zip−bugs [AT] wkuvx1.edu. For bug reports, please include the version of zip (see zip−h ), the make options used to compile it see zip−v ), the machine and operating system in use, and as much additional information as possible.

ACKNOWLEDGEMENTS

Thanks to R. P. Byrne for his Shrink.Pas program, which inspired this project, and from which the shrink algorithm was stolen; to Phil Katz for placing in the public domain the zip file format, compression format, and .ZIP filename extension, and for accepting minor changes to the file format; to Steve Burg for clarifications on the deflate format; to Haruhiko Okumura and Leonid Broukhis for providing some useful ideas for the compression algorithm; to Keith Petersen, Rich Wales, Hunter Goatley and Mark Adler for providing a mailing list and ftp site for the INFO-ZIP group to use; and most importantly, to the INFO-ZIP group itself (listed in the file infozip.who) without whose tireless testing and bug-fixing efforts a portable zip would not have been possible. Finally we should thank (blame) the first INFO-ZIP moderator, David Kirschbaum, for getting us into this mess in the first place. The manual page was rewritten for UNIX by R. P. C. Rodgers.

KATSO MYÖS

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