Kung Paano Maghanap ng Mga Compressed File Paggamit ng Linux

Ipapakita sa iyo ng gabay na ito kung paano maghanap ng mga naka-compress na file para sa isang string ng teksto o para sa isang partikular na expression.

Paano Upang Paghahanap At I-filter ang Mga Resulta Paggamit Ang Grep Command

Ang isa sa pinakamakapangyarihang mga utos ng Linux ay grep na kumakatawan sa "Global Regular Expressions Print".

Maaari mong gamitin ang grep upang maghanap ng mga pattern sa loob ng mga nilalaman ng isang file o ang output mula sa isa pang command.

Bilang isang halimbawa, kung pinapatakbo mo ang sumusunod na ps command makakakita ka ng isang listahan ng mga proseso na tumatakbo sa iyong computer.

ps -ef

Ang mga resulta ay mabilis na mag-scroll sa screen at kung karaniwang may isang malaking bilang ng mga resulta. Ginagawa nito ang pagtingin sa impormasyon lalo na masakit.

Maaari mong, siyempre, gamitin ang higit pang utos upang ilista ang isang pahina ng mga resulta sa isang oras tulad ng sumusunod:

ps -ef | higit pa

Habang ang output mula sa itaas na utos ay mas mahusay kaysa sa nakaraang isa pa mayroon ka sa pahina sa pamamagitan ng mga resulta upang mahanap kung ano ang iyong hinahanap.

Ginagawang posible ng grep command na salain ang mga resulta batay sa pamantayan na ipinadala mo dito. Halimbawa upang maghanap para sa lahat ng mga proseso sa hanay ng UID sa 'root' patakbuhin ang sumusunod na command:

ps -ef | grep root

Gumagana rin ang grep command sa mga file. Isipin mayroon kang isang file na naglalaman ng isang listahan ng mga pamagat ng libro. Isipin mo na nais mong makita kung ang file ay naglalaman ng "Little Red Riding Hood". Maaari mong hanapin ang file tulad ng sumusunod:

grep "Booklet Little Red Riding Hood"

Ang command ng grep ay napakalakas at ipapakita ng artikulong ito ang karamihan sa mga kapaki-pakinabang na switch na maaaring gamitin dito.

Paano Upang Maghanap ng Mga Compress na File Paggamit ng Ang zgrep Command

Ang isang maliit na kilala ngunit napakalakas na tool ay zgrep. Hinahayaan ka ng zgrep command na maghanap ka ng mga nilalaman ng isang naka-compress na file nang hindi maibubura ang mga nilalaman muna.

Ang zgrep command ay maaaring gamitin laban sa zip file o mga file na naka-compress gamit ang gzip command .

Ano ang pagkakaiba?

Ang isang zip file ay maaaring maglaman ng maraming file samantalang ang isang file na naka-compress gamit ang gzip command ay naglalaman lamang ng orihinal na file.

Upang maghanap ng teksto sa loob ng isang file na naka-compress na may gzip maaari mo lamang ipasok ang sumusunod na command:

zgrep expression filetosearch

Halimbawa, isipin na ang listahan ng mga libro ay na-compress gamit ang gzip. Maaari kang maghanap para sa teksto ng "maliit na red riding hood" sa naka-compress na file gamit ang sumusunod na command:

zgrep "Little Red Riding Hood" bookslist.gz

Maaari mong gamitin ang anumang expression at lahat ng mga setting na magagamit sa pamamagitan ng grep command bilang bahagi ng zgrep command.

Paano Upang Maghanap ng Mga Compress na File Paggamit Ang zipgrep Command

Ang zgrep command ay mahusay na gumagana sa mga file na naka-compress gamit ang gzip ngunit hindi gumagana nang maayos sa mga file na naka-compress gamit ang zip utility.

Maaari mong gamitin ang zgrep kung ang zip file ay naglalaman ng isang file ngunit ang karamihan sa mga zip file ay naglalaman ng higit sa isang file.

Ang zipgrep command ay ginagamit upang maghanap ng mga pattern sa loob ng zip file.

Bilang isang halimbawa isipin mayroon kang isang file na tinatawag na mga libro na may mga sumusunod na pamagat:

Gayundin isipin mayroon kang isang file na tinatawag na mga pelikula na may mga sumusunod na mga pamagat

Ngayon isipin ang dalawang file na ito ay na-compress gamit ang zip format sa isang file na tinatawag na media.zip.

Maaari mong gamitin ang zipgrep command upang mahanap ang mga pattern sa loob ng lahat ng mga file sa loob ng zip file. Halimbawa:

zipgrep pattern filename

Halimbawa, isipin na nais mong makita ang lahat ng mga pangyayari ng "Harry Potter" na gagamitin mo ang sumusunod na utos:

zipgrep "Harry Potter" media.zip

Ang output ay magiging tulad ng sumusunod:

Mga aklat: Harry Potter And The Chamber Of Secrets

Mga aklat: Harry Potter And The Order Of The Phoenix

Mga pelikula: Harry Potter At The Chamber Of Secrets

pelikula: Harry Potter At Ang Kopya Ng Apoy

Tulad ng maaari mong gamitin ang anumang expression na may zipgrep na maaari mong gamitin sa grep ito ay gumagawa ng tool na napakalakas at ginagawang naghahanap ng zip file magkano mas simple kaysa decompressing, maghanap at pagkatapos ay pag-compress muli.

Kung gusto mo lamang maghanap ng ilang mga file sa loob ng zip file, maaari mong tukuyin ang mga file upang maghanap sa loob ng zip file bilang bahagi ng utos tulad ng sumusunod:

zipgrep "Harry Potter" media.zip movies

Ang output ay magiging tulad ng mga sumusunod

Mga pelikula: Harry Potter At The Chamber Of Secrets

pelikula: Harry Potter At Ang Kopya Ng Apoy

Kung nais mong hanapin ang lahat ng mga file maliban sa isa maaari mong gamitin ang sumusunod na command:

zipgrep "Harry Potter" media.zip -x na mga libro

Ito ay magbubunga ng parehong output gaya ng dati dahil ito ay naghahanap ng lahat ng mga file sa loob ng media.zip maliban sa mga libro.