Kako poiskati stisnjene datoteke z Linuxom

Ta vodnik vam bo pokazal, kako poiskati stisnjene datoteke za niz besedila ali za določen izraz.

Kako iskati in filtrirati rezultate z ukazom Grep

Eden najmočnejših ukazov Linuxa je grep, ki pomeni "Globalni redni izrazi".

Grep lahko uporabite za iskanje vzorcev znotraj vsebine datoteke ali iz drugega ukaza.

Na primer, če zaženete naslednji ukaz ps , boste videli seznam procesov, ki se izvajajo v računalniku.

ps -ef

Rezultati se hitro pomaknete na zaslon in če je ponavadi veliko število rezultatov. Zaradi tega je informacije še posebej boleče.

Seveda lahko uporabite še več ukazov, da naenkrat naštete eno stran rezultatov, kot sledi:

ps -ef | več

Čeprav je izhod iz zgornjega ukaza boljši od prejšnjega, morate še vedno prikazati rezultate, da bi našli tisto, kar iščete.

Ukaz grep omogoča filtriranje rezultatov na podlagi meril, ki jih pošljete. Na primer, če želite poiskati vse procese z UID-jem, nastavljenim na »root«, naredite ta ukaz:

ps -ef | grep root

Ukaz grep deluje tudi na datotekah. Predstavljajte si, da imate datoteko, ki vsebuje seznam naslovov knjig. Predstavljajte si, da želite videti, ali datoteka vsebuje "Little Red Hood". Datoteko lahko poiščete na naslednji način:

grep "Little Red Hood" seznam knjig

Ukaz grep je zelo močan in ta članek bo prikazal večino koristnih stikal, ki jih je mogoče uporabljati z njo.

Kako poiskati stisnjene datoteke z ukazom zgrep

Malo znano, vendar zelo močno orodje je zgrep. Ukaz zgrep omogoča iskanje vsebine stisnjene datoteke, ne da bi pri tem prvič izvlekel vsebino.

Ukaz zgrep se lahko uporabi zip datotek ali datotek, stisnjenih z ukazom gzip .

Kakšna je razlika?

Datoteka zip lahko vsebuje več datotek, medtem ko datoteka, stisnjena z ukazom gzip, vsebuje samo izvirno datoteko.

Če želite poiskati besedilo v datoteki, stisnjeni z gzip, lahko preprosto vnesete naslednji ukaz:

zgrep izraz filetosearch

Predstavljajte si, na primer, da je seznam knjig stisnjen z gzipom. V stisnjeni datoteki lahko poiščete besedilo »mali rdeči jahalec« z naslednjim ukazom:

zgrep "Rdeča kapica" booklist.gz

Uporabite lahko kateri koli izraz in vse nastavitve, ki so na voljo prek ukaza grep kot del ukaza zgrep.

Kako poiskati stisnjene datoteke z ukazom zipgrep

Ukaz zgrep dobro deluje z datotekami, stisnjenimi z gzip, vendar ne deluje tako dobro na datotekah, stisnjenih z uporabo pripomočka zip.

Zgorev lahko uporabite, če datoteka zip vsebuje eno datoteko, vendar večina zip datotek vsebuje več kot eno datoteko.

Ukaz zipgrep se uporablja za iskanje vzorcev v zip datoteki.

Predstavljajte si, da imate na primer datoteko s knjigami z naslednjimi naslovi:

Predstavljajte si, da imate datoteko, imenovano film, z naslednjimi naslovi

Zdaj si predstavljamo, da sta bili ti dve datoteki stisnjeni z zip formatom v datoteko z imenom media.zip.

Ukaz zipgrep lahko uporabite za iskanje vzorcev v vseh datotekah v zip datoteki. Na primer:

sl Ime datoteke zipgrep

Predstavljajte si, na primer, da si želel najti vse pojave "Harry Potterja", ki bi jih uporabljali naslednji ukaz:

zipgrep "Harry Potter" media.zip

Rezultat bo naslednji:

knjige: Harry Potter in dvorana skrivnosti

knjige: Harry Potter in red feniksa

filmi: Harry Potter in dvorana skrivnosti

filmi: Harry Potter in pehota ognja

Ker lahko z izrazom zrepgrep uporabite katerikoli izraz, ki ga lahko uporabljate z grep, to naredi orodje zelo močno in naredi iskanje zip datotek veliko enostavnejše od dekompresije, iskanja in ponovnega stiskanja.

Če želite iskati samo določene datoteke v datoteki zip, lahko podate datoteke, ki jih želite preiskati v datoteki zip, kot del ukaza, kot sledi:

zipgrep "Harry Potter" media.zip filmov

Rezultat bo zdaj naslednji

filmi: Harry Potter in dvorana skrivnosti

filmi: Harry Potter in pehota ognja

Če želite poiskati vse datoteke, razen enega, lahko uporabite naslednji ukaz:

zipgrep "Harry Potter" media.zip -x knjige

To bo ustvarilo enako izhodno stanje kot prej, ker išče vse datoteke znotraj media.zip, razen za knjige.