Ali želite ekstrahirati eno datoteko ali mapo iz arhiva TAR ali TAR.GZ? Evo, kako lahko to storite v Linuxu z ukazom tar.

Arhiv (TAR ali TAR.GZ) je nabor datotek, združenih v en sam arhiv, kar olajša shranjevanje in prenos velikega števila datotek lokalno ali prek interneta. Kadarkoli potrebujete datoteke, lahko preprosto ekstrahirate arhiv.

Razmislite o scenariju, kjer potrebujete samo eno datoteko iz velikega arhiva. V tem primeru lahko namesto celotnega arhiva ekstrahirate samo datoteko, ki jo potrebujete. Poglejmo, kako.

Oglejte si vsebino tarballa

Če si želite samo ogledati vsebino datoteko TAR ali TAR.GZ, vam ga ni treba ekstrahirati. Namesto tega uporabite naslednji ukaz, da si ogledate, kaj je notri:

tar -tvf [arhiv.tar]
tar -ztvf [arhiv.tar.gz]

To bo natisnilo seznam vseh datotek in imenikov znotraj arhiva.

Ekstrahirajte eno datoteko iz tarballa

Če želite ekstrahirati eno datoteko iz TAR ali TAR.GZ, uporabite naslednji format ukaza:

tar -xvf [arhiv.tar] [pot do datoteke]
tar -zxvf [arhiv.tar.gz] [pot do datoteke]
instagram viewer

Ne pozabite, da boste morali navesti celotno pot do datoteke, ki jo želite ekstrahirati. Celotno pot do datoteke ali imenika lahko najdete z uporabo tar -tvf [arhiv.tar] ukaz.

Za ekstrahiranje datoteke test1.txt Iz test.tar in test.tar.gz datoteke, bi bili ukazi:

tar -xvf test.tar test1.txt
tar -zxvf test.tar.gz test1.txt

...kje:

  1. -x se uporablja za ekstrahiranje datotek iz arhiva
  2. -v se uporablja za ogled napredka med ekstrahiranjem
  3. -f se uporablja za podajanje imena tarballa
  4. -z se uporablja za dekompresijo datotek TAR.GZ

Ti ukazi bodo ekstrahirali določeno datoteko v trenutnem terminalskem imeniku.

Izvlecite en imenik iz Tarballa

Podobno lahko tudi ekstrahirate posamezen imenik iz arhiva z naslednjo sintakso:

tar xvf [arhiv.tar] [pot do imenika]
tar -zxvf [arhiv.tar.gz] [pot do imenika]

Na primer, da izvlečete celoto test1 podimenik iz test.tar arhiv, bi morali navesti celotno pot imenika, tj. test/test1:

tar -xvf test.tar test/test1

To bo ekstrahiralo celoten podimenik test/test1 v trenutnem terminalskem imeniku.

Ekstrahirajte posamezno datoteko ali mapo v drug imenik

Lahko tudi ekstrahirajte datoteko ali imenik iz arhiva v drug imenik. Za to uporabite isto sintakso kot zgoraj, vendar dodajte -C možnost, ki ji sledi ciljni imenik:

tar -xvf [arhiv.tar] -C [ciljni_imenik] [datoteka-ali-imenik]
tar -zxvf [arhiv.tar.gz] -C [ciljni_imenik] [datoteka-ali-imenik]

Recimo, da želimo ekstrahirati imenik test2 Iz test.tar arhiv v Prenosi imenik namesto trenutnega delovnega imenika. Ukaz bi v tem primeru bil:

tar -xvf test.tar -C ~/Prenosi/ test/test2

Izbrišite posamezno datoteko ali imenik iz arhiva

Če morate izbrisati eno datoteko ali imenik iz datoteke TAR ali TAR.GZ, uporabite --izbriši možnost z ukazom tar:

tar -vf [archive.tar] --delete [datoteka-ali-imenik]

Vendar datoteke ali imenika ne morete izbrisati neposredno iz stisnjenega arhiva (TAR.GZ). Najprej morate razpakirati datoteko TAR.GZ, izbrisati datoteko ali imenik in jo nato znova stisniti.

Za dekompresijo datoteke TAR.GZ uporabite naslednji ukaz:

gzip -d [arhiv.tar.gz]

Z dekompresijo se datoteka pretvori v TAR. Zdaj lahko izbrišete datoteko iz arhiva TAR z:

tar -vf [archive.tar] --delete [datoteka-ali-imenik]

Po tem znova stisnite datoteko TAR z gzip:

gzip -f [arhiv.tar]

Prihranite čas pri delu z arhivi v sistemu Linux

Ekstrahiranje samo zahtevanih datotek iz arhiva ne le prepreči nered, ampak tudi prihrani čas, ki bi ga sicer porabili za iskanje po velikem številu datotek.

Včasih ustvarjanje in ekstrahiranje datotek TAR povzroči podvojene datoteke v vašem sistemu. Zato je dobra praksa, da občasno prepoznate in odstranite te dvojnike, da očistite svoj prostor.