Pagrindinis » kaip » Kaip suspausti ir ištraukti failus naudojant „tar“ komandą „Linux“

    Kaip suspausti ir ištraukti failus naudojant „tar“ komandą „Linux“

    „Tar“ komanda „Linux“ dažnai naudojama kurti .tar.gz arba .tgz archyvo failus, taip pat vadinamus „tarballs“. Ši komanda turi daugybę parinkčių, tačiau tiesiog reikia prisiminti keletą laiškų, kad greitai sukurtumėte archyvus su taru . „Tar“ komanda taip pat gali išgauti gautus archyvus.

    „GNU tar“ komanda, įtraukta į „Linux“ platinimą, turi integruotą suspaudimą. Jis gali sukurti .tar archyvą ir tada suspausti ją gzip arba bzip2 suspaudimu viena komanda. Štai kodėl gautas failas yra failas .tar.gz arba .tar.bz2.

    Suspauskite visą katalogą arba vieną failą

    Naudokite šią komandą, kad suspaustumėte visą katalogą arba vieną failą „Linux“. Ji taip pat suspaus visus kitus katalogus, esančius jūsų nurodytame kataloge, kitaip tariant, ji veikia rekursyviai.

    tar -czvf vardas-of-archive.tar.gz / path / to / directory-or-file

    Štai ką šie jungikliai iš tikrųjų reiškia:

    • -c: Catkurti archyvą.
    • -z: Suspausti archyvą su gzip.
    • -v: rodyti pažangą terminale kuriant archyvą, dar vadinamą „vrežimas. Šiose komandose v yra visada neprivaloma, tačiau tai naudinga.
    • -f: leidžia nurodyti farchyvo pavadinimas.

    Tarkime, jūs turite katalogą, pavadintą „stuff“, esančią dabartiniame kataloge ir norite įrašyti jį į failą, pavadintą archyvas.tar.gz. Jūs vykdote šią komandą:

    tar -czvf archyvas.tar.gz stuff

    Arba pasakykime, kad yra esamas / usr / local / kažkas aplankas dabartinėje sistemoje ir norite suspausti jį į failą, pavadintą archyvas.tar.gz. Jūs vykdote šią komandą:

    tar -czvf archive.tar.gz / usr / local / kažkas

    Vienu metu suspauskite kelis katalogus arba failus

    Nors derva dažnai naudojama tam, kad suspaustų vieną katalogą, galite jį naudoti ir suspausti kelis katalogus, kelis atskirus failus arba abu. Tiesiog pateikite failų ar katalogų sąrašą vietoj vieno. Pavyzdžiui, tarkime, kad norite suspausti / home / ubuntu / Downloads katalogą, / usr / local / stuff katalogą ir /home/ubuntu/Documents/notes.txt failą. Jūs tiesiog vykdote šią komandą:

    tar -czvf archive.tar.gz / home / ubuntu / Siuntiniai / usr / local / stuff /home/ubuntu/Documents/notes.txt

    Tiesiog įrašykite kuo daugiau katalogų ar failų, kuriuos norite kurti.

    Išskirti katalogus ir failus

    Kai kuriais atvejais galite suspausti visą katalogą, bet neįtraukti tam tikrų failų ir katalogų. Tai galite padaryti pridedant --Neįtraukti perjungti kiekvieną katalogą ar failą, kurį norite pašalinti.

    Pavyzdžiui, tarkime, kad norite suspausti / namo / ubuntu, bet nenorite suspausti / home / ubuntu / Downloads ir /home/ubuntu/.cache katalogų. Štai kaip tai padaryti:

    tar -czvf archive.tar.gz / home / ubuntu --exclude = / home / ubuntu / Siuntiniai --exclude = / home / ubuntu / .cache

    The --Neįtraukti jungiklis yra labai galingas. Ji neatsižvelgia į katalogų ir failų pavadinimus - ji faktiškai priima modelius. Yra daug daugiau, ką galite padaryti su juo. Pvz., Galite archyvuoti visą katalogą ir pašalinti visas .mp4 rinkmenas su tokia komanda:

    tar -czvf archive.tar.gz / home / ubuntu --exclude = *. mp4

    Vietoj to naudokite „bzip2 Compression“

    Nors gtip suspaudimas dažniausiai naudojamas .tar.gz arba .tgz failų kūrimui, tar taip pat palaiko bzip2 suspaudimą. Tai leidžia sukurti bzip2 suspaustus failus, dažnai vadinamus .tar.bz2, .tar.bz arba .tbz failais. Norėdami tai padaryti, tiesiog pakeiskite -z už gzip komandose čia su -j už bzip2.

    „Gzip“ yra greitesnis, tačiau paprastai jis šiek tiek sumažėja, todėl gaunate šiek tiek didesnį failą. Bzip2 yra lėtesnis, tačiau jis šiek tiek suspausto, todėl gaunamas šiek tiek mažesnis failas. „Gzip“ taip pat dažniau pasitaiko, kai kai kurios „Linux“ sistemos, įskaitant „gzip“ palaikymą pagal nutylėjimą, bet ne „bzip2“ palaikymas. Apskritai, gzip ir bzip2 yra praktiškai tas pats ir abu veiks panašiai.

    Pvz., Vietoj pirmojo pavyzdžio, kurį pateikėme, norėdami suspausti stuff katalogą, paleisti šią komandą:

    tar-cjvf archyvas.tar.bz2 stuff

    Ištraukite archyvą

    Kai turite archyvą, galite jį išgauti su tar komanda. Toliau pateikta komanda ištrauks archyvo.tar.gz turinį į esamą katalogą.

    tar -xzvf archyvas.tar.gz

    Tai tas pats, kaip anksčiau panaudota archyvo kūrimo komanda, išskyrus -x jungiklis pakeičia -c jungiklis. Tai nurodo, kad norite exvietoj to sukurti archyvą.

    Galbūt norėsite ištraukti archyvo turinį į konkretų katalogą. Tai galite padaryti pridedant -C pereiti prie komandos pabaigos. Pvz., Ši komanda iš archyvo.tar.gz failo turinį išskirs į / tmp katalogą.

    tar -xzvf archyvas.tar.gz -C / tmp

    Jei failas yra suspaustas failas bzip2, pirmiau nurodytose komandose „z“ pakeiskite „j“.


    Tai paprasčiausias įmanomas tar komandų naudojimas. Į komandą įeina nemažai papildomų parinkčių, todėl negalime visų jų išvardyti čia. Daugiau informacijos. paleisti info tar komandą į apvalkalą, norėdami peržiūrėti „tar“ komandos išsamią informacijos puslapį. Paspauskite q klavišą, jei norite baigti informacijos puslapį, kai baigsite. Taip pat galite skaityti deguto vadovą internete.

    Jei naudojate grafinį „Linux“ darbalaukį, taip pat galite naudoti failų suspaudimo įrankį arba failų tvarkyklę, įtrauktą į darbalaukį, norėdami sukurti .tar failus. „Windows“ sistemoje galite išskirti ir kurti .tar archyvus naudodami nemokamą 7-Zip įrankį.