Kuidas faile Linuxi terminalist pakkida või lahti pakkida

ZIP-failid on universaalne arhiiv, mida tavaliselt kasutatakse Windowsi, MacOSi ja isegi Linuxi süsteemides. Mõne levinud Linuxi terminali käskluse abil saate luua ZIP-arhiivi või failid ühest lahti pakkida.

ZIP-tihendatud arhiivifailivorming

Tänu ZIP-vormingu domineerimisele Windowsi valdkonnas on ZIP-failid tõenäoliselt kõige levinum tihendatud arhiivi vorm maailmas.

Kui Linuxis on levinud .tar.gz ja tar.bz2 failid, saadavad Windowsi kasutajad teile tõenäoliselt ZIP-vormingus arhiivi. Ja kui soovite mõned failid arhiivida ja need Windowsi kasutajale saata, on ZIP-vorming kõigi jaoks lihtsaim ja ühilduvam lahendus.

SEOTUD:Kuidas faile ekstraktida .tar.gz või .tar.bz2 failist Linuxis

zip, unzip ja muud utiliidid

Võib-olla teate juba, et Linuxi ja Unixi-laadsetes operatsioonisüsteemides, nagu macOS, on tööriistad, mis võimaldavad teil luua ZIP-faile ja neist faile välja tõmmata tõmblukk ja lahti pakkima. Kuid seal on terve perekond seotud kommunaalteenuseid, näiteks tõmblukk, zipdetailid, lukuga ja zipinfo.

Kontrollisime mõningaid Linuxi jaotusi, et näha, kas need lisasid need utiliidid standardsesse installi. Kõik utiliidid olid olemas Ubuntu 19.04, 18.10 ja 18.04. Nad olid kohal ka Manjaros 18.04. Kaasa Fedora 29 tõmblukk ja lahti pakkima, kuid mitte ühtegi teist utiliiti ja see oli ka CentOSi puhul.

Puuduvate elementide installimiseks Fedora 29-le kasutage järgmist käsku:

sudo dnf installige perl-IO-Compress

Puuduvate elementide installimiseks CentOS 7-sse kasutage järgmist käsku:

sudo yum installige perl-IO-Compress

Kui Linuxi jaotusest, mida eespool ei mainitud, puudub mõni zip-utiliitidest, kasutage vajaliku paketi installimiseks selle Linuxi distributsiooni paketihalduse tööriista.

Kuidas luua ZIP-fail zip-käsuga

ZIP-faili loomiseks peate seda ütlema tõmblukk arhiivifaili nimi ja millised failid sinna lisada. Arhiivi nimele ei ole vaja laiendit .zip lisada, kuid see ei kahjusta, kui te seda teete.

Nimega faili loomiseks source_code.zip mis sisaldab kõiki praeguses kataloogis olevaid C lähtekoodifaile ja päisefaile, kasutaksite seda käsku:

zip lähtekood * .c * .h

Iga fail on loetletud lisamise ajal. Kuvatakse faili nimi ja sellel failil saavutatud tihendusaste.

Uut ZIP-arhiivi vaadates näete, et .zip-faililaiendi on automaatselt lisanud tõmblukk.

ls -l lähtekood.zip

Kui te ei soovi väljundit näha tõmblukk ZIP-faili loomisel kasutage -q (vaikne) variant.

zip -q allika_kood * .c * .h

Sealhulgas kataloogid ZIP-failides

Alamkataloogide lisamiseks ZIP-faili kasutage nuppu -r (rekursiivne) valik ja lisage käsureale alamkataloogi nimi. ZIP-faili loomiseks nagu varem ja ka arhiivi alamkataloogi lisamiseks kasutage seda käsku.

zip -r -q allika_koodiarhiiv / * .c * .h

Et olla tähelepanelik selle inimese suhtes, kes faile teie loodud ZIP-failist välja võtab, on sageli viisakas luua ZIP-faile koos kataloogis olevate failidega. Kui ZIP-faili saanud isik selle välja võtab, paigutatakse kõik failid kenasti tema arvuti kataloogi.

Järgmises käsus arhiveerime töö kataloog ja kõik alamkataloogid. Pange tähele, et see käsk antakse välja vanemkataloog selle töö kausta.

zip -r -q source_code töö /

Tihendustaseme määramine

Saate määrata, kui palju faile tihendatakse, kui need ZIP-arhiivi lisatakse. Vahemik on vahemikus 0 kuni 9, kusjuures 0 pole üldse kokkusurumine. Mida suurem tihendus, seda kauem ZIP-faili loomine võtab. Tagasihoidliku suurusega ZIP-failide puhul pole ajavahe märkimisväärne karistus. Kuid siis on tagasihoidliku suurusega ZIP-failide puhul vaikimisi tihendamine (tase 6) niikuinii ilmselt piisavalt hea.

Saada tõmblukk Kindla tihendusastme kasutamiseks edastage number käsureal valikuna tähega “-” järgmiselt:

ZIP -0 -r -q allika_kood töö /

Vaikimisi pakkimistase on 6. Seda pole vaja esitada -6 valik, kuid see ei kahjusta, kui te seda teete.

zip -r -q source_code töö /

Maksimaalne tihendustase on 9. tase.

ZIP -9 -r -q lähtekoodi kood /

Siin arhiveeritavate failide ja kataloogide valimisega on vahe tihendamise (tase 0) ja vaikimisi tihendamise (tase 6) vahe 400K. Vaikimisi tihendamise ja kõrgeima tihendustaseme (tase 9) vahe on ainult 4K.

See ei pruugi tunduda palju, kuid sadu või isegi tuhandeid faile sisaldavate arhiivide puhul annaks väike lisakompressioon faili kohta väärt ruumi kokkuhoiu.

Paroolide lisamine ZIP-failidesse

Paroolide lisamine ZIP-failidesse on lihtne. Kasuta -e (krüptida) valik ja teil palutakse sisestada oma parool ja sisestada see uuesti kinnitamiseks.

zip -e -r -q source_code töö /

Kuidas ZIP-fail lahti pakkida, pakkige lahti käsuga

Failide ZIP-failist eraldamiseks kasutage käsku unzip ja sisestage ZIP-faili nimi. Pange tähele, et teie tegema peate pakkuma laiendi .zip.

pakkige lahti lähtekood.zip

Failide ekstraktimisel on need loetletud terminaliaknas.

ZIP-failid ei sisalda faili omandi üksikasju. Kõigil ekstraheeritud failidel on omanik määratud kasutajale, kes neid ekstraktib.

Just nagu tõmblukk, lahti pakkima on -q (vaikne) variant, nii et te ei pea failide väljavõtmisel failide loendit nägema.

unzip -q allika_kood.zip

Failide eraldamine sihtkataloogi

Failide ekstraheerimiseks kindlas kataloogis kasutage -d (kataloog) valik ja sisestage tee kataloogi, kuhu soovite arhiivi ekstraktida.

unzip -q allika_kood.zip -d ./arendus

Väljavõtke parooliga kaitstud ZIP-failid

Kui ZIP-fail on loodud parooliga, lahti pakkima küsib teilt parooli. Kui te ei anna õiget parooli,lahti pakkima ei eralda faile.

unzip -q allika_kood.zip

Kui te ei hooli sellest, et teie parool oleks teistele nähtav - ega ka sellest, et see teie käsulukku salvestatakse -, saate parooli -P (parool) valik. (Peate kasutama suurtähte P.)

pakkige lahti -P fifty.treacle.cutlass -q source_code.zip

Failide väljajätmine

Kui te ei soovi kindlat faili või failirühma välja tõmmata, kasutage -x (välista) variant. Selles näites soovime eraldada kõik failid, välja arvatud need, mis lõpevad laiendiga .h.

unzip -q allika_kood.zip -x * .h

Failide ülekirjutamine

Oletame, et olete arhiivi välja pakkinud, kuid olete mõne ekspresseeritud faili ekslikult kustutanud.

Kiire lahendus oleks failide uuesti väljavõtmine. Aga kui proovite ZIP-faili samast kataloogist eraldada, lahti pakkima failide ülekirjutamise kohta. See eeldab ühte järgmistest vastustest.

Peale r (ümber nimetada) vastus, on need vastused tõstutundlikud.

  • y: Jah, kirjuta see fail üle
  • n: Ei, ära kirjuta seda faili üle
  • A: Kõik, kirjutage kõik failid üle
  • N: Puudub, ükski fail ei kirjuta üle
  • r: Nimeta ümber, eralda see fail, kuid anna sellele uus nimi. Teil palutakse sisestada uus nimi.

Sundima lahti pakkima olemasolevate failide ülekirjutamiseks kasutage -o (üle kirjutada) valik.

pakkige lahti -o -q source_code.zip

Kõige tõhusam viis oleks puuduvate failide asendamine lahti pakkima eraldage ainult arhiivis olevad failid mitte sihtkataloogis. Selleks kasutage -n (mitte kunagi üle kirjutada) variant.

unzip -n allika_kood.zip

Vaadates ZIP-faili

Sageli on kasulik ja õpetlik vaadata ZIP-failis olevate failide loendit enne selle väljavõtmist. Seda saate teha -L (loendi arhiiv) valik. See torustik läbi vähem et väljund oleks hallatav.

unzip -l allika_kood.zip | vähem

Väljundil kuvatakse ZIP-failis olevad kataloogid ja failid, nende pikkus ning arhiivi lisamise aeg ja kuupäev. Vajutage "q", et väljuda vähem.

ZIP-failis piilumiseks on ka teisi viise, mis annavad erinevat tüüpi teavet, nagu näeme.

Parooli lisamine zipcloaki käsuga

Mida saate teha, kui olete ZIP-faili loonud, kuid unustasite parooli lisada? ZIP-faili abil saate kiiresti parooli lisada, kasutades tõmblukk käsk. Sisestage käsureal ZIP-faili nimi. Teilt küsitakse parooli. Peate parooli kinnitama, sisestades selle teist korda.

zipcloak source_code.zip

Faili üksikasjade kuvamine käsuga zipdetails

The zipdetailid käsk näitab teile a palju teavet ZIP-faili kohta. Ainus mõistlik viis käsuga antud väljundi hulga käsitsemiseks on selle läbistamine vähem .

zipdetails source_code.zip | vähem

Pange tähele, et teave sisaldab failinimesid ka siis, kui ZIP-fail on parooliga kaitstud. Seda tüüpi teave salvestatakse ZIP-failis metaandmetena ega kuulu krüpteeritud andmete hulka.

Otsige faili seest käsuga zipgrep

The zipgrep käsk võimaldab teil otsida failides ZIP-failis. Järgmises näites tahame teada, millistes ZIP-faili failides on tekst "keyval.h".

zipgrep keyval.h source_code.zip

Näeme, et failid släng.c ja getval.c sisaldab stringi “keyval.h”. Samuti näeme, et neist failidest on ZIP-failis erinevates kataloogides kaks koopiat.

Teabe kuvamine käsuga zipinfo

The zipinfo käsk annab teile veel ühe võimaluse vaadata ZIP-faili. Nagu enne, torustame väljundi läbi vähem.

zipinfo source_code.zip | vähem

Vasakult paremale näitab väljund:

  • Faili load
  • ZIP-faili loomiseks kasutatud tööriista versioon
  • Algne failisuurus
  • Faili kirjeldaja (kirjeldatud allpool)
  • Kokkusurumismeetod (antud juhul deflatsioon)
  • Andmed ja ajatempel
  • Faili ja mis tahes kataloogi nimi

Faili kirjeldaja koosneb kahest tähemärgist. Esimeseks tähemärgiks on t või b, mis tähistab teksti- või kahendfaili. Kui see on suur täht, on fail krüptitud. Teine märk võib olla üks neljast tähemärgist. See tähis tähistab, millist tüüpi metaandmed selle faili jaoks on: pole ühtegi, laiendatud kohalikku päist, „lisavälja” või mõlemat.

  • -: Kui kumbagi pole olemas, on märk sidekriips
  • l: kui on laiendatud kohalik päis, kuid lisaväli puudub
  • x: kui laiendatud kohalikku päist pole, kuid on lisaväli
  • X: kui on laiendatud kohalik päis ja on lisaväli

Jagage fail käsuga zipsplit

Kui peate ZIP-faili saatma kellelegi teisele, kuid faili edastamisel on suuruse piiranguid või probleeme, võite kasutada lukuga käsk algne ZIP-fail jagada väiksemateks ZIP-failideks.

The -n (suurus) suvand võimaldab teil määrata iga uue ZIP-faili maksimaalse suuruse. Selles näites jagame source_code.zip faili. Me ei soovi, et ükski uus ZIP-fail oleks suurem kui 100 KB (102400 baiti).

zipsplit -n 102400 source_code.zip

Valitud suurus ei tohi olla väiksem kui ZIP-failis olevate failide suurus.

Nende käskude abil saate luua oma ZIP-failid, pakkida ZIP-failid lahti ja teha nendega mitmesuguseid muid toiminguid Linuxi terminalist lahkumata.


$config[zx-auto] not found$config[zx-overlay] not found