4Sep

Kā saspiest un ekstrakts failus, izmantojot tar komandu Linux

Tar komandu Linux bieži izmanto, lai izveidotu. tar.gz vai. tgz arhīvu failus, kurus sauc arī par "tarballs". Šai komandai ir daudz opciju, taču jums ir tikai jāatceras daži burti, lai ātri izveidotu arhīvus ardarva. Daru komanda var iegūt iegūtos arhīvus arī.

GNU tar komandu, kas iekļauts Linux distribūcijās, ir integrēta kompresija. Tas var izveidot. tar arhīvu un pēc tam saspiest to ar gzip vai bzip2 kompresiju vienā komandā.Tāpēc iegūtais fails ir. tar.gz fails vai. tar.bz2 fails.

Saspiest visu direktoriju vai atsevišķu failu

Izmantojiet šo komandu, lai saspiestu visu direktoriju vai vienu failu Linux. Tas arī saspiež katru citu direktoriju jūsu norādītajā direktorijā, citiem vārdiem sakot, tas darbojas rekursīvi.

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

Lūk, kādi šie slēdži patiesībā nozīmē:

  • -c: C atkārtojiet arhīvu.
  • -z: saspiest arhīvu ar g z ip.
  • -v: demonstrē progresu terminālā, veidojot arhīvu, pazīstams arī kā režīms " v erbose".Šajās komandās v vienmēr ir obligāta, taču tas ir noderīgi.
  • -f: ļauj norādīt f arhīva nosaukumu.

Pieņemsim, ka pašreizējā direktorijā esat izveidojis direktoriju ar nosaukumu "stuff" un vēlaties to saglabāt failā ar nosaukumu archive.tar.gz. Jūs palaidāt šādu komandu:

tar -czvf archive.tar.gz stuff

Vai, teiksim, ka pašreizējā sistēmā ir kaut kas direktorijā /usr/local/, un vēlaties to saspiest failā ar nosaukumu archive.tar.gz. Jūs palaidāt šādu komandu:

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

saspiest vairākas direktorijas vai failus vienlaicīgi

Kamēr tar parasti tiek izmantots, lai saspiestu vienu direktoriju, jūs to varat arī izmantot, lai saspiestu vairākus direktorijus, vairākus direktorijusatsevišķi faili vai abi faili. Vienkārši nodrošiniet failu vai direktoriju sarakstu, nevis vienu. Piemēram, pieņemsim, ka vēlaties saspiest /home/ubuntu/ lejupielāžu direktoriju, /usr/local/ stuff direktoriju un /home/ubuntu/Documents/ notes.txt failu. Jūs vienkārši palaidāt šādu komandu:

tar -czvf archive.tar.gz /home/ubuntu/ Lejupielādes /usr/local/ stuff /home/ubuntu/Documents/ notes.txt

Tikai norādiet tik daudz direktoriju vai failu, cik vēlaties dublēt.

Izslēgt direktorijus un failus

Dažos gadījumos jūs varat saspiest visu direktoriju, bet neietver noteiktus failus un direktorijus. To var izdarīt, pievienojot --atslēga slēdzi katram katalogam vai failam, kuru vēlaties izslēgt.

Piemēram, pieņemsim, ka vēlaties saspiest /home/ ubuntu, bet nevēlaties saspiest /home/ubuntu/ lejupielādes un /home/ubuntu/. cache direktorijus. Lūk, kā to izdarīt:

tar -czvf archive.tar.gz /home/ ubuntu -exclude = /home/ubuntu/ Lejupielādes - iziet = /home/ubuntu/. cache

The -exclude slēdzis ir ļoti spēcīgs. Tas neuztver direktoriju un failu nosaukumus - tas faktiski pieņem paraugus. Ar to ir daudz vairāk, ko varat darīt. Piemēram, jūs varat arhivēt visu direktoriju un izslēgt visus. mp4 failus ar šādu komandu:

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

Izmantojiet bzip2 kompresiju vietā

Kamēr gzip kompresija ir visbiežākizmantots, lai izveidotu. tar.gz vai. tgz failus, tar arī atbalsta bzip2 kompresiju. Tas ļauj jums izveidot bzip2 saspiestu failus, kurus bieži sauc par. tar.bz2,. tar.bz vai. tbz failiem. Lai to izdarītu, vienkārši aizvietojiet -z par gzip komandu šeit ar -j bzip2.

Gzip ir ātrāks, taču tas parasti saspiež mazliet mazāku apjomu, tādēļ jūs saņemat nedaudz lielāku failu. Bzip2 ir lēnāks, bet tas saspiež mazliet vairāk, tādēļ jūs saņemat nedaudz mazāku failu. Arī Gzip ir biežāk sastopams ar dažām Linux sistēmām, tostarp pēc noklusējuma atbalsta gzip atbalstu, bet ne bzip2 atbalstu. Tomēr vispār, gzip un bzip2 ir praktiski vienādi, un abi strādās līdzīgi.

Piemēram, pirmā piemēra vietā mēs piedāvājām sīkumu direktorijas saspiešanu, jūs palaidīsiet šādu komandu:

tar -cjvf archive.tar.bz2 stuff

Izraksta arhīvu

Kad ir arhīvs, to var iegūtar tar komandu.Šī komanda izraksta archive.tar.gz saturu uz pašreizējo direktoriju.

tar -xzvf archive.tar.gz

Tas ir tāds pats kā arhīva izveides komanda, kuru mēs izmantojām iepriekš, izņemot -x slēdzi aizstāj-c slēdzi. Tas norāda, ka vēlaties x traktēt arhīvu tā vietā, lai to izveidotu.

Jūs varētu vēlēties izvilkt arhīva saturu uz konkrētu direktoriju. To var izdarīt, pievienojot komandu "C".Piemēram, šāda komanda izraksta arhīva. tar.gz failu saturu direktorijā / tmp.

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

Ja fails ir bzip2 saspiests fails, aizstāt "z" iepriekš minētajās komandās ar "j".

Tas ir vienkāršākais darvas komandas iespējamais pielietojums. Komandai ir liels skaits papildu opciju, tāpēc mēs nevaram tos visus šeit uzskaitīt. Lai iegūtu vairāk informācijas.palaidiet komandu info tar uz korpusa, lai skatītu tar komandas detalizētās informācijas lapu. Kad esat pabeidzis, nospiediet q taustiņu, lai izietu no informācijas lapas. Jūs varat arī izlasīt darvas rokasgrāmatu tiešsaistē.

Ja jūs izmantojat grafisko Linux darbvirsmu, varat arī izmantot failu kompresijas utilītu vai failu pārvaldnieku, kas ir iekļauts darbvirsmā, lai izveidotu vai ekstraktu. tar failus. Windows sistēmā jūs varat iegūt un izveidot. tar arhīvus ar bezmaksas 7-Zip utilītu.