Fájlok tömörítése és kibontása a tar parancs használatával Linux alatt

  • Chris Hoffman

    @chrisbhoffman

  • 2016. április 10. , 06:40 EDT

A tar parancsot Linuxon gyakran használják .tar.gz vagy .tgz archív fájlok létrehozására, más néven “tarballs” -nak. Ennek a parancsnak számos lehetősége van, de csak néhány betűt kell megjegyeznie, hogy gyorsan archívumokat hozzon létre tar-val. A tar parancs kibonthatja az eredményül kapott archívumokat is.

A Linuxhoz tartozó GNU tar parancs A disztribúciók integrált tömörítéssel rendelkeznek. Létrehozhat egy .tar archívumot, majd egy parancsban tömörítheti a gzip vagy a bzip2 tömörítéssel. Ezért a kapott fájl egy .tar.gz vagy .tar.bz2 fájl. h2> Teljes könyvtár vagy egy fájl tömörítése

A következő paranccsal egy teljes könyvtárat vagy egyetlen fájlt tömöríthet a Linux rendszeren. Ez minden más könyvtárat tömörít egy megadott könyvtárban – más szavakkal , rekurzívan működik.

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

A kapcsolók valójában ezt jelentik:

  • -c: Archívum létrehozása.
  • -z: Az archívum tömörítése a gzip segítségével.
  • -v: Az előrehaladás megjelenítése a terminálban az archívum létrehozása közben, más néven “részletes” mód. A v mindig nem kötelező ezekben a parancsokban, de hasznos.
  • -f: Lehetővé teszi az archívum fájlnevének megadását.
Reklám

Tegyük fel, hogy van egy “stuff” nevű könyvtár az aktuális könyvtárban, és el akarja menteni az archive.tar.gz nevű fájlba. A következő parancsot futtatja:

tar -czvf archive.tar.gz stuff

Vagy tegyük fel, hogy van egy könyvtár az / usr / local / valamivel az aktuális rendszeren, és tömöríteni kívánja egy archive.tar.gz nevű fájlba. A következő parancsot futtatná. :

tar -czvf archive.tar.gz /usr/local/something

Több könyvtár vagy fájl tömörítése egyszerre

KAPCSOLÓDÓ: Fájlok kezelése a Linux terminálról: 11 parancs szükséges Tudja

Míg a tar-ot gyakran használják egyetlen könyvtár tömörítésére, használhatja több könyvtár, több különálló fájl vagy mindkettő tömörítésére is. Csak egy fájl helyett adja meg a fájlok vagy könyvtárak listáját. Tegyük fel például, hogy tömöríteni szeretné a / home / ubuntu / Do fájlt a wnloads könyvtár, az / usr / local / stuff könyvtár és a /home/ubuntu/Documents/notes.txt fájl. Most futtatta a következő parancsot:

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

Csak annyi könyvtárat vagy fájlt soroljon fel, ahány biztonsági másolatot szeretne készíteni.

Kizárás Könyvtárak és fájlok

Bizonyos esetekben érdemes egy egész könyvtárat tömöríteni, de nem tartalmazhat bizonyos fájlokat és könyvtárakat. Ezt úgy teheti meg, hogy egy --exclude kapcsolót csatol minden kizárni kívánt könyvtárhoz vagy fájlhoz.

Hirdetések

Például mondjuk tömöríteni szeretné a / home / ubuntu fájlt, de nem akarja tömöríteni a / home / ubuntu / Downloads és /home/ubuntu/.cache könyvtárakat. Így tegye:

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

A --exclude kapcsoló nagyon erős. Nem veszi fel a könyvtárak és fájlok nevét – valójában elfogadja a mintákat. Sokkal többet tehetsz vele. Például archiválhat egy teljes könyvtárat, és kizárhat minden .mp4 fájlt a következő paranccsal:

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

Használja a bzip2 tömörítést helyett

Míg a gzip tömörítést leggyakrabban a .tar.gz vagy .tgz fájlok létrehozására használják, a tar támogatja a bzip2 tömörítést is. Ez lehetővé teszi bzip2 fájlokkal tömörített fájlok létrehozását, gyakran .tar.bz2, .tar.bz vagy .tbz fájlok néven. Ehhez csak cserélje le a gzip -z -jét az itt található parancsokban egy -j-re a bzip2-hez.

Reklám

A Gzip gyorsabb, de általában valamivel kevesebbet tömörít, tehát valamivel nagyobb fájlt kap. A Bzip2 lassabb, de egy kicsit jobban tömörít, így valamivel kisebb fájlt kap. A Gzip is gyakoribb, néhány lecsupaszított Linux rendszerben alapértelmezés szerint a gzip támogatás van, de a bzip2 támogatás nem. Általában azonban a gzip és a bzip2 gyakorlatilag ugyanaz, és mindkettő hasonlóan fog működni.

Például a cucc könyvtár tömörítésére megadott első példa helyett a következő parancsot kell futtatnia:

tar -cjvf archive.tar.bz2 stuff

Archívum kibontása

Miután elkészült egy archívum, kivonhatja a tar paranccsal. A következő parancs kibontja az archive.tar.gz tartalmát az aktuális könyvtárba.

tar -xzvf archive.tar.gz

Ez megegyezik a fent használt archívum létrehozási paranccsal, kivéve a -x kapcsoló helyettesíti a -c kapcsolót. Ez megadja, hogy archívumot kíván létrehozni ahelyett, hogy létrehozna egyet.

Reklám

Érdemes kibontani az archívum tartalmát egy adott könyvtárba. Ezt úgy teheti meg, hogy a -C kapcsolót hozzáfűzi a parancs végéhez. Például a következő parancs kibontja az archive.tar.gz fájl tartalmát a / tmp könyvtárba.

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

Ha a fájl bzip2-formátumú, tömörített fájl, akkor a fenti parancsokban szereplő “z” -et cserélje le “j” -re.

Ez a tar parancs lehető legegyszerűbb használata. A parancs nagyszámú további opciót tartalmaz, ezért itt nem sorolhatjuk fel mindet. További információért. futtassa az info tar parancsot a shellben a tar parancs részletes információs oldalának megtekintéséhez. Ha végzett, nyomja meg a q gombot az információs oldal kilépéséhez. A tar kézikönyvét online is elolvashatja.

Ha grafikus Linux asztalt használ, az .tar fájlok létrehozásához vagy kibontásához használhatja az asztalon található fájltömörítő segédprogramot vagy fájlkezelőt is. Windows rendszeren kibonthatja és létrehozhatja .tar archívumait az ingyenes 7-Zip segédprogrammal.

Chris Hoffman
Chris Hoffman a How-To Geek főszerkesztője. Közel egy évtizede írt a technológiáról, és két évig a PCWorld rovatvezetője volt. Chris írt a The New York Times-nak, technológiai szakértőként készített interjút olyan tévéállomásokon, mint a Miami NBC 6, és munkáját a híradók, mint a BBC. 2011 óta Chris több mint 2000 cikket írt, amelyeket több mint 500 milliószor olvastak el – és ez csak itt található a How-To Geeknél. Olvassa el a teljes életrajzot “

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük