Како да пребарувате компресирани датотеки со користење на Linux

Овој водич ќе ви покаже како да пребарувате компресирани датотеки за низа текст или за одреден израз.

Како да пребарувате и филтрирате резултати со користење на командата Греп

Една од најмоќните команди на Linux е grep што се залага за "Глобални регуларни изразувања за печатење".

Можете да го користите grep за да пребарувате за шаблони во рамките на содржината на датотека или на излез од друга команда.

Како пример, ако ја извршите следната команда ps, ќе видите листа на процеси кои се извршуваат на вашиот компјутер.

ps -ef

Резултатите брзо се лизнуваат на екранот и ако обично има голем број на резултати. Ова го прави гледањето на информациите особено болно.

Вие, се разбира, би можеле да ја користите повеќе командата за да наведете една страница од резултатите во еден момент како што следува:

ps -ef | повеќе

Додека излезот од горенаведената команда е подобар од претходниот, сеуште морате да направите страница преку резултатите за да го пронајдете она што го барате.

Командата grep овозможува филтрирање на резултатите врз основа на критериумите што ги испраќате до него. На пример, за да пребарувате за сите процеси со UID поставено на 'root', извршете ја следнава команда:

ps -ef | grep root

Командата grep исто така работи на датотеки. Замислете дека имате датотека која содржи листа на наслови на книги. Замислете дека сакате да видите дали датотеката содржи "Црвенкапа". Можете да ја пребарате датотеката на следниов начин:

grep "Црвенкапа" листа на книги

Командата grep е многу моќна и овој напис ќе ги прикаже повеќето корисни прекинувачи кои можат да се користат со него.

Како да пребарувате компресирани датотеки со помош на zgrep командата

Малку позната, но многу моќна алатка е zgrep. Командата zgrep овозможува пребарување на содржината на компресирана датотека без прво извлекување на содржината.

Командата zgrep може да се користи против zip датотеки или датотеки компресирани со помош на командата gzip .

Што е разликата?

Zip датотеката може да содржи повеќе датотеки, додека пак датотеката компресирана со командата gzip содржи само оригиналната датотека.

За да пребарувате текст во датотека компресирана со gzip, едноставно можете да ја внесете следнава команда:

zgrep изразување filetosearch

На пример, замислете дека листата на книги е компресирана со gzip. Можете да го побарате текстот "малку црвено качулка" во компресираната датотека користејќи ја следнава команда:

zgrep "Црвенкапа" bookslist.gz

Можете да користите било кој израз и сите подесувања достапни преку командата grep како дел од zgrep командата.

Како да пребарувате компресирани датотеки со помош на командата zipgrep

Командата zgrep добро работи со датотеки компресирани со gzip, но не работи толку добро на датотеки компресирани со користење на zip utility.

Можете да го користите zgrep ако zip-датотеката содржи една датотека, но повеќето zip-датотеки содржат повеќе од една датотека.

Командата zipgrep се користи за пребарување на шаблони во zip датотека.

Како пример замислете дека имате датотека наречена книги со следните наслови:

Исто така, замислете дека имате датотека наречена филмови со следните наслови

Сега замислете дека овие две датотеки се компресирани со користење на zip формат во датотека наречена media.zip.

Можете да ја користите командата zipgrep за да најдете обрасци во сите датотеки во zip датотеката. На пример:

zipgrep шема име на датотека

На пример, замислете дека сакавте да ги најдете сите појавувања на "Хари Потер", ќе ја користите следнава команда:

zipgrep "Хари Потер" media.zip

Излезот ќе биде како што следува:

книги: Хари Потер и Комората на тајните

книги: Хари Потер и редот на Феникс

филмови: Хари Потер и комората на тајните

филмови: Хари Потер и пехарот на огнот

Како што можете да користите било кој израз со zipgrep што можете да го користите со grep, ова го прави алатката многу моќна и го прави пребарувањето zip датотеки многу поедноставно од декомпресирање, пребарување и потоа компресирање повторно.

Ако само сакате да пребарувате одредени датотеки во zip-датотеката, можете да ги наведете датотеките за пребарување во рамките на zip-датотеката како дел од командата како што следува:

zipgrep "Хари Потер" media.zip филмови

Излезот сега ќе биде како што следува

филмови: Хари Потер и комората на тајните

филмови: Хари Потер и пехарот на огнот

Ако сакате да ги пребарувате сите датотеки, освен за една, можете да ја користите следнава команда:

zipgrep "Хари Потер" media.zip -x книги

Ова ќе го произведе истиот излез како порано, бидејќи ги пребарува сите датотеки во рамките на media.zip освен за книги.