Zip

From ICO wiki
Jump to navigationJump to search

Sissejuhatus

Tarkvaraga zip saab arhiveerida ning kokku pakkida faile ning katalooge, võimalusega säilitada kataloogide struktuuri.

Zip kokkupakkimisvõime on oluliselt kehvem kui näiteks Gzip-l.

Zip suudab kokku pakkida mitu faili ühte arhiivi, kui Gzip peab selle saavutamiseks tegema lisatoiminguid.

Zip kokkupakitud arhiivist saab vaevata eraldada üksikuid faile, Gzip puhul on see keerulisem. Lahtipakkimiseks kasutatakse tarkvara unzip.


Eeldused

Läbiviidud toimingud on tehtud Ubuntu 11.10 Oneiric peal.

Käesolev referaat käsitleb tarkvara:

Zip versioon 3.0-4

Unzip versioon 6.0-4ubuntu1


Tarkvara üldkirjeldus

Tarkvara zip kasutatakse faili(de) arhiveerimiseks ja/või kokkupakkimiseks. Olemasolevasse zip arhiivi on lihtne lisada uusi faile ning uuendada juba sealolevaid faile.

Tarkvara unzip võimaldab lahti pakkida, testida ning kuvada arhiivi sisu.


Installeerimise juhend

Tarkvara Zip installeerimine käsurealt:

 apt-get install zip

Koos zip-ga installeeritakse automaatselt ka unzip.

 The following extra packages will be installed:
 unzip
 The following NEW packages will be installed:
 unzip zip
 

Kasutamise juhend

zip [options] archive inpath

Kirjeldus
options pakkimisprotseduuri täpsustavad valikud
archive loodava arhiivi nimi, mis võib sisaldada faililaiendit .zip
inpath arhiivi minevate failide asukoht


Kui Zip arhiivi nimeks määratakse juba eksisteeriv arhiiv, siis arhiivis olevad identsed failid asendatakse (uuendatakse) ning uued failid lisatakse arhiivi juurde (u, f, d võtmeid mitte kasutades).


Zip käitumist arhiividega tegelemisel saab mõjutada võtmetega:

Võti Kirjeldus
u (--update) Arhiivis olevaid faile uuendatakse ainult siis, kui süsteemis olevad failid on uuema ajamärgisega. Uued failid lisatakse arhiivi.
f (--freshen) Arhiivis olevaid faile uuendatakse ainult siis, kui süsteemis olevad failid on uuema ajamärgisega. Uusi faile ei lisata arhiivi.
d (--delete) Failide kustutamiseks arhiivi seest.
r (--recurse-paths) Kataloogide ja nende sisu kaasamine operatsioonidesse.
e (--encrypt) Parooli panemine arhiivile
i (--include) Lisatakse arhiivi ainult ettenäidatud failid.
j (--junk-paths) Kataloogide struktuuri mittesäilitamiseks.
n (--suffixes) Et soovitud faile ei üritataks kokku pakkida.


Üks enimkasutatavaid võtmeid on -r (rekursiivne), mille puhul kaasatakse arhiveerimisse ka kaustades olevad failid:

 zip -r foo.zip *

Ainult kindlate soovitud failide lisamine arhiivi käib võtmega -i:

 zip foo.zip -r . -i moo.txt shadow.txt
 zip foo.zip -r . -i *.txt

Vaikimisi lisatakse arhiivi ka kataloogide struktuur, milles failid paiknevad. Et lisada kõik failid ühte kokku ilma kataloogideta, kasutatakse võtit -j:

 zip -rj foo.zip *

Eelnevalt kokkupakitud faile pole mõtet omakorda kokku pakkida. Vaikimisi lisab Zip failid nagu .Z .zip .zoo .arc .lzh .arj otse arhiivifaili ilma, et üritaks neid uuesti kokku pakkida. Teiste failide (näiteks .gif ja .jpg) kokkupakkimist saab vältida võtmega -n.

Näide, mille puhul ei üritata pakkida .jpg .gif .zip faile:

 zip -rn .jpg:.gif:.zip foo2.zip *

NB! Kõik -n võtme järel mainimata jäetud faililaiendid lähevad pakkimisele, ka .zip, .arj jne.

Kõigi failide kokkupakkimist, olenemata faililaiendist, saab nõuda võtmega -n, kus ei mainita ühtegi faililaiendit:

 zip -n : foo2.zip *

Ilma võtmeta kasutatav zip lisab kokkupakkimisele ainult aktiivses kaustas olevad failid ja kataloogid. Kataloogides olevaid faile ei lisata.

 zip stuff *

Et lisada arhiivi ainult soovitud kataloog(id), loetletakse need üksteise järel:

 zip -r foo.zip kt eksam

Et lisada loodavale arhiivile parool, tuleb kasutada võtit -e:

 zip -re foo.zip *

Mille järel küsitakse kasutajalt parooli:

 Enter password:
 Verify password:

Faile saab arhiivist kustutada võtmega -d:

 zip -d foo.zip 1/tehtud.txt

Unzip

unzip [options] archive [arguments]

Argument Kirjeldus
d Saab määrata, millisesse kataloogi failid eraldatakse
x Saab määrata, milliseid faile ei käsitleta lahtipakkimisel.
files Saab määrata, milliseid faile käsitletakse lahtipakkimisel (vaikimisi käsitletakse kõiki faile)


Võti Kirjeldus
l Näidatakse zip arhiivi sisu
v Näidatakse zip arhiivi sisu ja iga elemendi pakkimismeetodit, hashi, mahtu ning kokkupakituse taset.
j Kataloogides olev kataloogistruktuuri ignoreeritakse ning kõik failid eraldatakse ühte kokku.
 unzip foo.zip -d opa
 unzip foo.zip -x moo.txt
 unzip foo.zip files moo.txt
 unzip -l foo.zip 
 unzip -v foo.zip	
 unzip -j foo.zip 

Kõige lihtsakoelisem unzip kasutamine eraldab failid samasse kausta, kus arhiiv ise asub. Lahti pakkides võetakse arvesse arhiivis olev kataloogide struktuur :

 unzip foo.zip

Output:

 Archive:  foo.zip
 creating: 1/
 creating: 1/2/
 inflating: 1/2/uptime.txt
 inflating: 1/tehtud.txt	


Et näha, mis failid ja kataloogid on zip arhiivis, tuleb kasutada võtit -l (lowercase L):

 unzip -l foo.zip

Output:

 Length     Date      Time    Name
 ---------  ---------- -----   ----
 0          2011-11-23 20:35   1/
 0          2011-11-23 20:37   1/2/
 664        2011-11-16 10:54   1/2/uptime.txt
 122        2011-11-16 11:24   1/tehtud.txt
 241        2011-11-16 10:35   20111116.txt
 118        2011-11-16 10:10   moo.txt
  25        2011-11-16 10:25   shadow.txt
 157        2011-11-16 10:26   vaikesed.txt
 ---------                     -------
 1327                          8 files

Kokkuvõte

Zip on mugav ning piisavalt laialdaste võimalustega tarkvara failide arhiveerimiseks ning kokkupakkimiseks. Zipi manual on kergesti jälgitav, arusaadav ning rohkete näidetega. Zip on ideaalne vahend just arhiveerimiseks, pakkudes erinevaid failide käsitlemisviise arhiivi sisu uuendamisel.


Kasutatud kirjandus

http://www.differencebetween.net/technology/difference-between-zip-and-gzip/

http://pro-programmers.blogspot.com/2010/02/zip-vs-gzip.html

Wiki artikli autor

Heiki Saaver A31

--Hsaaver 13:20, 25 November 2011 (EET)