Si të kërkoni skedarë të kompresuar duke përdorur Linux

Ky udhëzues do t'ju tregojë se si të kërkoni skedarë të ngjeshur për një varg teksti ose për një shprehje të veçantë.

Si të kërkoni dhe të filtroni rezultatet duke përdorur komandën Grep

Një nga komandat më të fuqishme Linux është grep i cili qëndron për "Printime të rregullta të shprehjeve të rregullta".

Ju mund të përdorni grep për të kërkuar modele brenda përmbajtjes së një skedari ose prodhimit nga një komandë tjetër.

Si shembull, në qoftë se ju drejtuar komandën e mëposhtme ps ju do të shihni një listë të proceseve të cilat janë duke u në kompjuterin tuaj.

ps -ef

Rezultatet lëvizen në ekran shpejt dhe nëse ka një numër të madh rezultatesh. Kjo e bën shikimin e informacionit veçanërisht të dhimbshme.

Ju mundeni, natyrisht, të përdorni komandën më shumë për të renditur një faqe të rezultateve në një kohë si më poshtë:

ps -ef | më shumë

Përderisa produkti nga komanda e mësipërme është më i mirë se ai i mëparshëm, ende duhet të kërkoni përmes rezultateve për të gjetur atë që kërkoni.

Komanda grep bën të mundur për të filtruar rezultatet në bazë të kritereve që dërgoni në të. Për shembull, për të kërkuar të gjitha proceset me UID të vendosur në 'root', drejtoj komandën e mëposhtme:

ps -ef | rrënjë grep

Komanda grep gjithashtu punon në skedarë. Paramendoni që keni një skedar që përmban një listë të titujve të librit. Imagjinoni që doni të shihni nëse skedari përmban "Kuq të Kuq". Ju mund të kërkoni skedarin si më poshtë:

grep "Red Riding Hood" libërlista

Komanda grep është shumë e fuqishme dhe ky artikull do të tregojë shumicën e ndërfaqeve të dobishme që mund të përdoren me të.

Si të kërkoni skedarë të kompresuar duke përdorur komandën zgrep

Një mjet i njohur pak, por shumë i fuqishëm është zgrep. Komanda zgrep ju lejon të kërkoni përmbajtjen e një skedari të ngjeshur pa nxjerrjen e përmbajtjes së parë.

Komanda zgrep mund të përdoret kundër skedarëve zip ose dosjeve të ngjeshura duke përdorur komandën gzip .

Qfare eshte dallimi?

Një skedar zip mund të përmbajë skeda të shumta, ndërsa një skedar i ngjeshur duke përdorur komandën gzip përmban vetëm skedarin origjinal.

Për të kërkuar tekst brenda një skedari të ngjeshur me gzip ju thjesht mund të shkruani komandën e mëposhtme:

zgrep filetosearch shprehje

Për shembull, imagjinoni që lista e librave është ngjeshur duke përdorur gzip. Ju mund të kërkoni tekstin "kapuç të vogël të kuq" në skedarin e ngjeshur duke përdorur komandën e mëposhtme:

zgrep "Little Red Riding Hood" libërlista.gz

Mund të përdorni çdo shprehje dhe të gjitha cilësimet e disponueshme nëpërmjet komandës grep si pjesë e komandës zgrep.

Si të kërkoni skedarë të kompresuar duke përdorur Command zipgrep

Komanda zgrep punon mirë me skedarët e ngjeshur duke përdorur gzip, por nuk punon aq mirë në skedarët e ngjeshur duke përdorur programin zip.

Ju mund të përdorni zgrep nëse skedari zip përmban një skedar të vetëm, por shumica e skedarëve zip përmbajnë më shumë se një skedar.

Komanda zipgrep përdoret për të kërkuar modele brenda një skedari zip.

Si shembull imagjinoni të keni një skedar të quajtur libra me titujt e mëposhtëm:

Gjithashtu imagjinoni që keni një skedar të quajtur filma me titujt e mëposhtëm

Tani imagjinoni këto dy skedarë janë ngjeshur duke përdorur formatin zip në një skedar të quajtur media.zip.

Ju mund të përdorni komandën zipgrep për të gjetur modele brenda të gjitha skedarëve brenda skedarit zip. Për shembull:

zipgrep pattern filename

Për shembull, imagjinoni të doni të gjeni të gjitha shfaqjet e "Harry Potter" ju do të përdorni komandën e mëposhtme:

zipgrep "Harry Potter" media.zip

Prodhimi do të jetë si më poshtë:

libra: Harry Potter dhe Dhoma e Sekreteve

libra: Harry Potter dhe rendi i Phoenix

filma: Harry Potter dhe Dhoma e Sekreteve

filma: Harry Potter dhe kupa e zjarrit

Siç mund të përdorni ndonjë shprehje me zipgrep që mund të përdorni me grep, kjo e bën mjet shumë të fuqishëm dhe i bën skedarët e kërkimit të zipave shumë më të thjeshtë se sa të shpërbëhen, të kërkojnë dhe pastaj të shtypen përsëri.

Nëse dëshironi të kërkoni vetëm skedarë të caktuar brenda skedarit zip ju mund të specifikoni skedarët për të kërkuar brenda skedarit zip si pjesë e komandës si më poshtë:

zipgrep "Harry Potter" media.zip filma

Produkti tani do të jetë si më poshtë

filma: Harry Potter dhe Dhoma e Sekreteve

filma: Harry Potter dhe kupa e zjarrit

Nëse doni të kërkoni të gjitha dosjet përveç një, ju mund të përdorni komandën e mëposhtme:

zipgrep "Harry Potter" media.zip -x libra

Kjo do të prodhojë të njëjtën prodhim si më parë, ndërsa po kërkon të gjitha skedarët brenda media.zip përveç librave.