Autor: Rubaiat Hossain
E-mailem

Příkaz grep se používá k hledání řetězců v textovém souboru. Zde je deset příkladů grepu, které vám mohou pomoci.

Příkaz grep poskytuje přístup k nástroji grep, výkonnému nástroji pro zpracování souborů, který se používá k hledání vzorů v textových souborech. Má mnoho praktických případů použití a je určitě jedním z nejpoužívanějších příkazů Linuxu. Tato příručka ilustruje některé jednoduché, ale užitečné příkazy grep systému Linux, které se používají v reálném světě.

Ukázkový soubor k předvedení

Vytvořili jsme referenční soubor, který pomůže čtenářům lépe porozumět grepu. Kopii tohoto souboru můžete vytvořit vydáním následujícího příkazu shellu ve vašem terminálu.

kočka <> testovací soubor
Toto je jednoduchý textový soubor, který obsahuje
více řetězců i některá telefonní čísla
(555) 555-1234 (567) 666-2345
a e-mail a webové adresy
[email protected]
https://google.com
ftp://mywebserver.com
KONEC

1. Najděte text v souborech

Chcete-li vyhledat textový vzor v souboru, jednoduše spusťte grep následovaný názvem vzoru. Zadejte také název souboru, který obsahuje text.

grep "email" testovací soubor

Tento příkaz zobrazí řádek v našem testovací soubor který obsahuje slovo e-mailem. Stejný text můžete také vyhledat ve více souborech pomocí grep.

grep "příklad" / usr / share / dict / americko-anglický / usr / share / dict / britsko-anglický

Výše uvedený příkaz zobrazuje všechny výskyty slova příklad v americká angličtina a Britská angličtina soubory slovníku.

2. Najděte slova přesné shody

Příkaz Linux grep ilustrovaný v předchozím příkladu také uvádí řádky s částečnými shodami. Pokud potřebujete pouze přesné výskyty slova, použijte níže uvedený příkaz.

grep -w "řetězec" testovací soubor

The -w nebo --word-regexp volba grep omezuje výstup pouze na přesné shody. Grep se skládá z několika dalších příznaků, které lze použít také s výchozím příkazem.

Příbuzný: Jak dostal Grep své jméno? Historie za vznikem Grepu

3. Ignorovat rozlišování případů

Ve výchozím nastavení grep vyhledává vzory rozlišováním malých a velkých písmen. Možná to však budete chtít vypnout, pokud nevíte, v jakém případě je vzorek předem.

grep -i "tento" testovací soubor

Použijte -i nebo --ignorovat případ možnost pro vypnutí citlivosti případu.

4. Spočítejte počet vzorů

The -C vlajka znamená počet. Zobrazuje počet shod, které byly nalezeny pro konkrétní vzor. Správci to mohou použít k získání konkrétních informací o systému.

Můžete dýmku příkaz ps s grep spočítat procesy, které patří aktuálnímu uživateli.

ps -ef | grep -c $ UŽIVATEL

Následující příkaz zobrazí počet MP3 soubory přítomné v adresáři.

ls ~ / Hudba | grep -c .mp3

5. Zobrazení čísel řádků obsahujících shody

Možná budete chtít najít čísla řádků, která obsahují určitou shodu. Použijte -n nebo --číslo řádku možnost grep k dosažení tohoto cíle.

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

Tato možnost je zvláště užitečná pro ladění zdrojových kódů a řešení problémů se soubory protokolu. Chcete-li zobrazit všechna čísla řádků v souboru ~ / .vimrc které se používají pro konfigurace textového editoru Vim:

grep -n "set" ~ / .vimrc

6. Najděte názvy souborů pomocí přípon

Chcete-li získat seznam všech MP3 soubory přítomné v souboru ~ / Hudba adresář:

ls ~ / Hudba / | grep ".mp3"

Můžete vyměnit .mp3 s jakýmikoli dalšími příponami pro vyhledání konkrétních souborů. Následující příkaz obsahuje seznam všech php soubory přítomné v aktuálním pracovním adresáři.

ls | grep ".php"

7. Najděte vzory v komprimovaných souborech

Příkaz Linux grep také může najít vzory uvnitř komprimovaných souborů. Budete muset použít zgrep příkaz k tomu, nicméně. Nejprve vytvořte komprimovaný archiv našeho testovací soubor zadáním:

testovací soubor gzip

Nyní můžete ve výsledném archivu hledat text nebo jiné vzory.

e-mail zgrep test-file.gz

8. Najděte e-mailové adresy

Správci mohou také vypsat e-mailové adresy z textových souborů pomocí příkazu Linux grep. Následující příklad to provede vyhledáním vzoru regulárního výrazu.

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

Najdete regulární výrazy pro provádění podobných úloh nebo si je můžete vytvořit sami, pokud víte, jak fungují.

9. Najděte telefonní čísla pomocí Grep

Pro filtrování telefonních čísel z textového souboru můžete použít regulární výrazy grep. Pamatujte, že budete muset vyladit vzor tak, aby odpovídal typu požadovaných telefonních čísel.

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

Výše uvedený příkaz odfiltruje desetimístná americká telefonní čísla.

10. Najděte adresy URL ze zdrojových souborů

Můžeme využít sílu grepu pro vypsání adres URL nalezených v textových souborech. Níže uvedený příkaz vytiskne všechny adresy URL přítomné v souboru testovací soubor.

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

Znovu používáme -E možnost rozšířených regulárních výrazů. Můžete také použít egrep příkaz, aby se zabránilo přidání tohoto.

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

Zvládnutí příkazu Linux Grep

Představili jsme několik užitečných příkladů příkazu Linux grep pro řešení problémů v reálném světě. Ačkoli tyto příklady ilustrují sílu grepu pro zpracování textu, budete muset zvládnout regulární výrazy, pokud chcete být s grepem super produktivní.

Uživatelé systému Linux někdy narazí na určité situace, kdy si nemohou vzpomenout na různé možnosti související s příkazem. Doufejme, že operační systém Linux poskytuje způsoby, jak získat pomoc s příkazovým řádkem téměř pro každý systémový nástroj.

E-mailem
7 způsobů, jak získat nápovědu pro příkazový řádek v systému Linux

Všechny základní příkazy pro učení příkazů Linux z příkazového řádku

Přečtěte si další

Související témata
  • Linux
  • Linux
  • Příkazy pro Linux
O autorovi
Rubaiat Hossain (15 článků publikováno)

Rubaiat je CS grad se silnou vášní pro open-source. Kromě toho, že je veteránem Unixu, věnuje se také zabezpečení sítě, kryptografii a funkčnímu programování. Je vášnivým sběratelem použitých knih a má nekonečný obdiv ke klasickému rocku.

Více od Rubaiat Hossain

Přihlaste se k odběru našeho zpravodaje

Připojte se k našemu zpravodaji s technickými tipy, recenzemi, bezplatnými elektronickými knihami a exkluzivními nabídkami!

Ještě jeden krok…!

V e-mailu, který jsme vám právě poslali, potvrďte svou e-mailovou adresu.

.