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.
Všechny základní příkazy pro učení příkazů Linux z příkazového řádku
Přečtěte si další
- Linux
- Linux
- Příkazy pro Linux

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.
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.