Zip
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)