Kuidas kasutada tihendatud failide otsimiseks käske zgrep ja zipgrep

See juhend näitab teile, kuidas otsida tihendatud faile a Linux arvuti tekstistringi või konkreetse avaldise jaoks.

Kuidas otsida ja filtreerida tulemusi käsu grep abil

Üks võimsamaid Linuxi käske on grep, mis tähendab Global Regular Expressions Print. Saate kasutada grep, et otsida mustreid faili sisust või mõne muu käsu väljundist.

Näitena käivitage järgmine ps käsk arvutis töötavate protsesside loendi vaatamiseks:

ps -ef

Tulemused kerivad ekraanil kiiresti. Kui tulemusi on palju, muudab see teabe vaatamise segaseks.

Linuxi ps käsk

Lehe kerimise peatamiseks kasutage nuppu rohkem käsku et loetleda üks tulemuste leht korraga järgmiselt:

ps -ef | rohkem. 

Kuigi ülaltoodud käsu väljund on eelmisest parem, peate siiski otsima tulemusi, et leida, mida vajate.

Käsk grep võimaldab filtreerida tulemusi sellele saadetud kriteeriumide alusel. Näiteks kõigi protsesside otsimiseks, mille UID on seatud väärtusele juur, käivitage järgmine käsk:

ps -ef | grep juur. 
Linux ps koos grepiga

Käsk grep töötab ka failide puhul. Kujutage ette, et teil on fail, mis sisaldab raamatute pealkirjade loendit, ja soovite näha, kas fail sisaldab

Punamütsike. Saate failist otsida järgmiselt.

grep "Punamütsike" raamatuloend. 
Linuxi grep-fail

The grep käsk on võimas ja sellega saab kasutada palju kasulikke lüliteid.

Tihendatud failide otsimine käsu zgrep abil

Vähetuntud, kuid väga võimas tööriist on zgrep. Käsk zgrep võimaldab teil otsida tihendatud faili sisust sisu esmalt lahti pakkimata. Käsku zgrep saab kasutada zip-failid või failid, mis on tihendatud kasutades gzip käsk.

Mis vahet sellel on? Zip-fail võib sisaldada mitut faili, samas kui gzip-käsuga tihendatud fail sisaldab ainult originaalfaili.

Gzipiga tihendatud failist teksti otsimiseks sisestage järgmine käsk:

zgrep avaldis failiotsing. 

Näiteks kujutage ette, et raamatute loend tihendati gzipi abil. Saate teksti otsida Punamütsike tihendatud failis, kasutades järgmist käsku:

zgrep "Punamütsike" bookslist.gz. 
Linuxi zgrep

Saate kasutada mis tahes avaldist ja kõiki grep käsuga saadaolevaid sätteid käsu zgrep osana.

Tihendatud failide otsimine käsu zipgrep abil

Zipgrep-käsku kasutatakse zip-failis mustrite otsimiseks. Käsk zgrep töötab hästi gzipiga tihendatud failidega, kuid ei tööta nii hästi failide puhul, mis on tihendatud zip-utiliidiga. Saate kasutada zgrepi, kui ZIP-fail sisaldab ühte faili, kuid enamik zip-faile sisaldab rohkem kui ühte faili.

Näiteks kujutage ette, et teil on fail nimega raamatuid järgmiste pealkirjadega:

  • Harry Potter ja saladuste kamber
  • Kärbja taltsutamine
  • Hiirtest ja meestest
  • Hitchhikers Guide to the Galaxy
  • Harry Potter ja Fööniksi ordu

Samuti kujutage ette, et teil on fail nimega filmid järgmiste pealkirjadega:

  • Maatriks
  • Harry Potter ja saladuste kamber
  • Harry Potter ja tulepeeker
  • Star Wars: uus lootus

Kujutage nüüd ette, et need kaks faili on zip-vormingus tihendatud failiks nimega media.zip. Zip-faili failidest mustrite leidmiseks saate kasutada käsku zipgrep. Näiteks:

zipgrep mustri failinimi. 

Et leida kõik esinemised Harry Potter, kasutage järgmist käsku:

zipgrep "Harry Potter" media.zip. 

Väljund on järgmine:

raamatud: Harry Potter ja saladuste kamber
raamatud: Harry Potter ja Fööniksi ordu
filmid: Harry Potter ja saladuste kamber
filmid: Harry Potter ja tulepeeker.
Linuxi zipgrep

Kuna zipgrepis saab kasutada mis tahes avaldist, mida saab kasutada koos grepiga, muudab see tööriista väga heaks võimas ja muudab ZIP-failide otsimise lihtsamaks kui lahtipakkimine, otsimine ja seejärel tihendamine uuesti.

Kui soovite ZIP-failis otsida ainult teatud faile, määrake käsu osana ZIP-failist otsitavad failid järgmiselt.

zipgrep "Harry Potter" media.zip filmid. 

Väljund on järgmine:

filmid: Harry Potter ja saladuste kamber
filmid: Harry Potter ja tulepeeker.
Linuxi zipgrep otsing faili järgi

Kui soovite otsida kõiki faile peale ühe, kasutage järgmist käsku:

zipgrep "Harry Potter" media.zip -x raamatud. 

See annab sama väljundi nagu varem, otsides kõigist failidest media.zip välja arvatud raamatud.