Autor: Rubaiat Hossain
Email

Príkaz grep sa používa na hľadanie reťazcov v textovom súbore. Tu je desať príkladov grepu, ktoré by vám mohli pomôcť.

Príkaz grep poskytuje prístup k obslužnému programu grep, výkonnému nástroju na spracovanie súborov, ktorý sa používa na vyhľadanie vzorov v textových súboroch. Má veľa praktických prípadov použitia a je určite jedným z najpoužívanejších príkazov Linuxu. Táto príručka ilustruje niektoré jednoduché, ale užitočné príkazy Linuxu grep, ktoré sa používajú v reálnom svete.

Ukážkový súbor na demonštráciu

Vytvorili sme referenčný súbor, ktorý pomáha čitateľom efektívnejšie porozumieť grepu. Kópiu tohto súboru môžete vytvoriť zadaním nasledujúceho príkazu shell vo vašom termináli.

mačka <> testovací súbor
Toto je jednoduchý textový súbor, ktorý obsahuje
niekoľko reťazcov, ako aj niektoré telefónne čísla
(555) 555-1234 (567) 666-2345
a e-mail a webové adresy
[email protected]
https://google.com
ftp://mywebserver.com
KONIEC
instagram viewer

1. Nájdite text v súboroch

Ak chcete vyhľadať textový vzor v súbore, jednoducho spustite grep nasledovaný názvom vzoru. Zadajte tiež názov súboru, ktorý obsahuje text.

grep "e-mailový" testovací súbor

Tento príkaz zobrazí riadok v našom testovací súbor ktorá obsahuje dané slovo e-mail. Rovnaký text môžete tiež vyhľadávať vo viacerých súboroch pomocou funkcie grep.

grep „example“ / usr / share / dict / americko-anglický / usr / share / dict / britsko-anglický

Vyššie uvedený príkaz zobrazuje všetky výskyty slova príklad v Americká angličtina a Britská angličtina slovníkové súbory.

2. Nájdite slová presnej zhody

Príkaz Linux grep ilustrovaný v predchádzajúcom príklade tiež uvádza riadky s čiastočnými zhodami. Ak potrebujete iba presný výskyt slova, použite nasledujúci príkaz.

grep -w "reťazec" testovací súbor

The -w alebo --word-regexp možnosť grep obmedzuje výstup iba na presné zhody. Grep pozostáva z niekoľkých ďalších príznakov, ktoré je možné použiť aj s predvoleným príkazom.

Súvisiace: Ako dostal Grep svoje meno? História za vznikom Grepu

3. Ignorovať rozlišovanie malých a veľkých písmen

V predvolenom nastavení grep vyhľadáva vzory spôsobom, ktorý rozlišuje veľké a malé písmená. Možno to však budete chcieť vypnúť, ak neviete, v akom prípade je vzor vopred.

grep -i "tento" testovací súbor

Použi -i alebo --ignore-case možnosť vypnutia citlivosti na veľké a malé písmená.

4. Spočítajte počet vzorov

The -c vlajka znamená počítať. Zobrazuje počet zhôd, ktoré boli nájdené pre konkrétny vzor. Správcovia to môžu využiť na získanie konkrétnych informácií o systéme.

Môžete fajkovať príkaz ps s grep na spočítanie procesov, ktoré patria aktuálnemu používateľovi.

ps -ef | grep -c $ UŽÍVATEĽ

Nasledujúci príkaz zobrazuje počet MP3 súbory prítomné v adresári.

ls ~ / Hudba | grep -c .mp3

5. Zobrazenie čísel riadkov obsahujúcich zhody

Možno budete chcieť nájsť čísla riadkov, ktoré obsahujú určitú zhodu. Použi -n alebo --poradové číslo možnosť grep to dosiahnuť.

mačka / etc / passwd | grep -n rubaiat

Táto možnosť je obzvlášť užitočná pre ladenie zdrojových kódov a riešenie problémov so súbormi denníka. Ak chcete zobraziť všetky čísla riadkov v ~ / .vimrc ktoré sa používajú na konfigurácia textového editora Vim:

grep -n "nastaviť" ~ / .vimrc

6. Vyhľadajte názvy súborov pomocou prípon

Ak chcete získať zoznam všetkých MP3 súbory prítomné v ~ / Hudba adresár:

ls ~ / Hudba / | grep ".mp3"

Môžete nahradiť .mp3 s akýmikoľvek inými príponami na vyhľadanie konkrétnych súborov. Nasledujúci príkaz obsahuje zoznam všetkých súborov php súbory prítomné v aktuálnom pracovnom adresári.

ls | grep ".php"

7. Nájdite vzory v komprimovaných súboroch

Príkaz grep v systéme Linux tiež dokáže nájsť vzory v komprimovaných súboroch. Budete musieť použiť zgrep velenie. Najskôr vytvorte komprimovaný archív našich súborov testovací súbor zadaním:

testovací súbor gzip

Teraz môžete hľadať text alebo iné vzory vo výslednom archíve.

zgrep e-mail test-file.gz

8. Nájdite e-mailové adresy

Správcovia môžu tiež uviesť zoznam e-mailových adries z textových súborov pomocou príkazu grep v systéme Linux. Nasledujúci príklad to robí hľadaním vzoru regulárneho výrazu.

grep '^ [a-zA-Z0-9] \ + @ [a-zA-Z0-9] \ + \. [a-z] \ {2, \}' testovací súbor

Nájdete regulárne výrazy pre vykonávanie podobných úloh alebo ich môžete vytvoriť sami, ak viete, ako fungujú.

9. Vyhľadajte telefónne čísla pomocou programu Grep

Na filtrovanie telefónnych čísel z textového súboru môžete použiť regulárne výrazy grep. Upozorňujeme, že budete musieť doladiť vzor tak, aby zodpovedal požadovanému typu telefónnych čísel.

grep '\ (([0-9] \ {3 \}) \ | [0-9] \ {3 \} \) [-] \? [0-9] \ {3 \} [-] \? [0-9] \ {4 \} 'testovací súbor

Vyššie uvedený príkaz odfiltruje desaťmiestne americké telefónne čísla.

10. Vyhľadajte adresy URL zo zdrojových súborov

Pri vypisovaní adries URL nájdených v textových súboroch môžeme využiť silu grepu. Nižšie uvedený príkaz vytlačí všetky adresy URL, ktoré sa nachádzajú v priečinku testovací súbor.

grep -E "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4}) „testovací súbor

Opäť používame -E možnosť rozšírených regulárnych výrazov. Môžete tiež použiť egrep príkaz vyhnúť sa pridaniu tohto.

egrep "^ (http | https | ftp): [\ /] {2} ([a-zA-Z0-9 \ - \.] + \. [a-zA-Z] {2,4})" test -súbor

Zvládnutie príkazu Linux Grep

Predstavili sme niekoľko užitočných príkladov príkazu Linux grep na riešenie problémov v reálnom svete. Aj keď tieto príklady ilustrujú silu grepu pri spracovaní textu, budete musieť ovládať regulárne výrazy, ak chcete byť s grepom superproduktívni.

Používatelia systému Linux niekedy narazia na určité situácie, keď si nemôžu spomenúť na rôzne možnosti týkajúce sa príkazu. Dúfajme, že operačný systém Linux poskytuje spôsoby, ako získať pomoc s príkazovým riadkom pre takmer všetky systémové pomôcky.

Email
7 spôsobov, ako získať pomoc s príkazovým riadkom v systéme Linux

Všetky základné príkazy na učenie sa o príkazoch Linuxu z príkazového riadku

Prečítajte si Ďalej

Súvisiace témy
  • Linux
  • Linux
  • Príkazy pre Linux
O autorovi
Rubaiat Hossain (15 publikovaných článkov)

Rubaiat je CS grad so silnou vášňou pre open-source. Okrem toho, že je veteránom z Unixu, venuje sa aj zabezpečeniu sietí, kryptografii a funkčnému programovaniu. Je vášnivým zberateľom kníh z druhej ruky a má nekonečný obdiv ku klasickému rocku.

Viac od Rubaiata Hossaina

Prihlásiť sa ku odberu noviniek

Pripojte sa k nášmu bulletinu s technickými tipmi, recenziami, bezplatnými elektronickými knihami a exkluzívnymi ponukami!

Ešte jeden krok…!

V e-maile, ktorý sme vám práve poslali, potvrďte svoju e-mailovú adresu.

.