Selles juhendis näete, kuidas otsida tihendatud faile teksti stringi või konkreetse avaldise jaoks.
Kuidas otsida ja filtreerida tulemusi, kasutades Grep-käsku
Üks võimsamaid Linuxi käske on grep, mis tähistab "Global Regular Expressions Print".
Võite kasutada grep, et otsida mustri sisu faili sisust või teise käsu väljundist.
Näiteks kui käivitate järgmise käskluse ps , näete arvutis käivitatud protsesside loendit.
ps -ef
Tulemused sirvivad ekraanile kiiresti ja kui tavaliselt on palju tulemusi. See muudab teabe vaatamise eriti valusaks.
Loomulikult võite kasutada rohkem käsku, et kuvada ühe tulemuste lehe korraga järgmiselt:
ps -ef | rohkem
Kuigi ülaltoodud käsu väljund on parem kui eelmine, peate otsingutulemuste lehel leidma, mida otsite.
Grep-käsk võimaldab tulemusi filtreerida, lähtudes kriteeriumidest, mida sellele saata. Näiteks kõigi protsesside otsimiseks UID-ga, mis on määratud root'iks, käivitage järgmine käsk:
ps -ef | grep root
Grep-käsk toimib ka failides. Kujutage ette, et teil on fail, mis sisaldab raamatute pealkirju. Kujutage ette, et soovite näha, kas fail sisaldab "väikest punaseppu". Faili saate otsida järgmiselt:
Grep "Little Red Riding Hood" brošüür
Kuidas otsida tihendatud faile, kasutades zgrep käsku
Vähe tuntud, kuid väga võimas tööriist on zgrep. Käsk zgrep võimaldab teil otsida tihendatud faili sisu, ilma sisu väljavõtmata.
Zgrep-käsku saab kasutada zip-failide või gzip-käsuga kokkusurutud failide vastu.
Mis vahe on?
Zip-fail võib sisaldada mitut faili, samas kui fail, mis on suletud käsuga gzip, sisaldab ainult originaalfaili.
Gzipiga tihendatud faili teksti otsimiseks võite lihtsalt sisestada järgmise käsu:
zgrep väljend failotsing
Näiteks kujutlege, et raamatute nimekiri on tihendatud gzipi abil. Võite otsida teksti "pisike punane ratsakate" tihendatud failis, kasutades järgmist käsku:
zgrep "väike punane ratsakapp" bookslid.gz
Võite kasutada suvalist väljendeid ja kõiki sätteid, mis on saadaval grep-käskluse kaudu osana zgrep käsklusest.
Kuidas otsida tihendatud faile zipgrep käsku kasutades
ZGREP-käsk toimib hästi gzip-failiga kokkusurutud failide puhul, kuid see ei toimi nii zip-utiliitidega kokkusurutud failide puhul.
Võite kasutada zgrepi, kui zip-fail sisaldab ühte faili, kuid enamik zip-faili sisaldab rohkem kui ühte faili.
Zipgrep käsku kasutatakse zip-faili mustrite otsimiseks.
Näiteks kujutlege, et teil on fail nimega raamatud, millel on järgmised pealkirjad:
- Harry Potter Ja salajas kamber
- Röövivöömine
- Hiired ja mehed
- Galaktikast Hitchhikeri juhend
- Harry Potter ja Phoenixi orden
Samuti kujutage ette, et teil on failid nimega filme, millel on järgmised pealkirjad
- Maatriks
- Harry Potter Ja salajas kamber
- Harry Potter ja kampsun
- Star Wars - uus lootus
Kujutage ette, et need kaks faili on krüptitud ZIP-vormingus faili nimega media.zip.
Võite kasutada zipgrep käsku, et leida mustreid kõikides failides zip-failis. Näiteks:
zipgrep mustri failinimi
Näiteks kujutlege, et soovisite leida kõik Harry Potteri esinemised, mida kasutate järgmise käsuga:
zipgrep "Harry Potter" meedia.zip
Väljund on järgmine:
raamatud: Harry Potter ja salakaval
raamatud: Harry Potter ja Phoenixi orden
filmid: Harry Potter ja saladuste kamber
filmid: Harry Potter ja tulekahju auk
Kuna saate kasutada zipgrep-i mis tahes väljendit, mida saab grep-iga kasutada, muudab see tööriista väga võimas ja muudab zip-failide otsimise palju lihtsamaks kui uuesti dekompresseerib, otsib ja seejärel tihendab.
Kui soovite ainult teatud faili otsida zip-failis, võite määrata failid, mida otsida zip-failina osana käsust järgmiselt:
zipgrep "Harry Potter" meedia .zip-filme
Väljund on nüüd järgmine
filmid: Harry Potter ja saladuste kamber
filmid: Harry Potter ja tulekahju auk
Kui soovite otsida kõiki faile, välja arvatud üks, võite kasutada järgmist käsku:
zipgrep "Harry Potter" meedia. zip-x raamatud
See annab sama tulemuse kui varem, kuna see otsib kõiki faile media.zip, välja arvatud raamatud.