GNU/Linux >> Znalost Linux >  >> Linux

Příklady příkazů fgrep v Linuxu

Existují 3 různé formy slavného příkazu grep. Níže uvedený seznam také rozlišuje mezi jejich případy použití.

  • fgrep :Rychlé vyhledávání jednoduchých vzorů. Tento příkaz použijte k rychlému vyhledání vzorů bez jakýchkoli zástupných znaků, což je užitečné při hledání běžného slova.
  • grep :Vyhledávání vzorů pomocí běžných regulárních výrazů.
  • egrep :Vyhledávání vzorů pomocí výkonnějších rozšířených regulárních výrazů.

fgrep (fast grep) hledá v jednom nebo více souborech řádky, které odpovídají zadanému textovému řetězci. Výstupní stav je 0, pokud se některé řádky shodují, 1, pokud ne, a 2 pro chyby. fgrep je rychlejší než normální vyhledávání grep, ale méně flexibilní:dokáže najít pouze pevný text, nikoli regulární výrazy.

Příkaz fgrep je stejný jako grep, ale namísto přijímání regulárního výrazu přijímá seznam pevných řetězců oddělených novými řádky. Je to stejné jako grep -F. Pokud máte například soubor slovníku plný řetězců, jeden na řádek:

# cat my_dictionary_file
aardvark
aback
abandon
...

tyto řetězce můžete pohodlně vyhledávat v sadě vstupních souborů:

# fgrep -f my_dictionary_file inputfile1 inputfile2

Normálně použijete volbu malých písmen -f, aby fgrep četl pevné řetězce ze souboru. Pevné řetězce na příkazovém řádku můžete také číst pomocí uvozovek, ale je to trochu složitější. Chcete-li vyhledat řetězce jedna, dva a tři v souboru, zadejte:

# fgrep 'one             ### Note we are typing newline characters
two
three' myfile

fgrep je vhodný při hledání nealfanumerických znaků, jako jsou * a {, protože jsou brány doslovně, nikoli jako znaky regulárních výrazů.

Příklady příkazů fgrep

1. Interpretace PATTERN jako rozšířeného regulárního výrazu:

# fgrep --extended-regexp PATTERN
# fgrep -E PATTERN 

2. Chcete-li interpretovat PATTERN jako seznam pevných řetězců:

# fgrep -F PATTERN
# fgrep --fixed-strings PATTERN 

3. Interpretace PATTERN jako základního regulárního výrazu:

# fgrep -G PATTERN
# fgrep --basic-regexp PATTERN 

4. Interpretace PATTERN jako regulárního výrazu Perlu:

# fgrep -P PATTERN
# fgrep --perl-regexp PATTERN 

5. Použití PATTERN jako vzoru:

# fgrep -e PATTERN, 
# fgrep --regexp=PATTERN

6. Chcete-li získat vzory ze SOUBORU, jeden na řádek:

# fgrep -f FILE, --file=FILE 

7. Ignorování rozlišení velkých a malých písmen ve VZORU i ve vstupních souborech:

# fgrep -i PATTERN
# fgrep --ignore-case PATTERN

8. Chcete-li převrátit smysl shody, vybrat neodpovídající řádky:

# fgrep -v PATTERN
# fgrep --invert-match PATTERN 

9. Chcete-li vybrat pouze řádky obsahující shody, které tvoří celá slova:

# fgrep -w PATTERN
# fgrep --word-regexp PATTERN 

10. Chcete-li vybrat pouze ty shody, které přesně odpovídají celému řádku:

# fgrep -x PATTERN
# fgrep --line-regexp PATTERN 

11. Ignorování velikosti písmen:

# fgrep -y PATTERN

12. Potlačení normálního výstupu; místo toho vytiskněte počet odpovídajících řádků:

# fgrep -c PATTERN
# fgrep --count PATTERN

13. Barevné zobrazení:

# fgrep --color PATTERN 

14. Potlačení normálního výstupu; místo toho vytiskněte název každého vstupního souboru, ze kterého se neočekává:

# fgrep -L PATTERN
# fgrep --files-without-match PATTERN

15. Potlačení normálního výstupu; místo toho vypište název každého vstupního souboru, ze kterého byl vytištěn výstup:

# fgrep -l PATTERN
# fgrep --files-with-matches PATTERN 

16. Do klidu; nezapisovat nic na standardní výstup Okamžitě opustit s nulovým stavem, pokud je nalezena jakákoliv shoda:

# fgrep -q PATTERN
# fgrep --quiet PATTERN
# fgrep --silent PATTERN 

17. Chcete-li zastavit čtení souboru po NUM odpovídajících řádcích:

# fgrep -m NUM PATTERN
# fgrep --max-count=NUM PATTERN

18. Chcete-li vytisknout pouze shodné (neprázdné) části shodného řádku:

# fgrep -o PATTERN
# fgrep --only-matching PATTERN

19. Chcete-li potlačit chybové zprávy o neexistujících nebo nečitelných souborech:

# fgrep -s PATTERN
# fgrep --no-messages PATTERN

20. Tisk bajtového offsetu založeného na 0 ve vstupním souboru před každým řádkem výstupu:

# fgrep -b PATTERN
# fgrep --byte-offset PATTERN 

21. Tisk názvu souboru pro každou shodu:

# fgrep -H PATTERN
# fgrep --with-filename PATTERN 

22. Chcete-li potlačit předponu názvů souborů na výstupu:

# fgrep -h PATTERN
# fgrep --no-filename PATTERN 

23. To Display vstup skutečně pocházející ze standardního vstupu jako vstup pocházející ze souboru LABEL:

# fgrep -cd PATTERN | fgrep --label=mysearch -H PATTERN 

24. Chcete-li předřadit každému řádku výstupu číslo řádku založeného na 1 v jeho vstupním souboru:

# fgrep -n PATTERN
# fgrep --line-number PATTERN

25. Chcete-li se ujistit, že první znak skutečného obsahu řádku leží na zarážce tabulátoru:

# fgrep -T PATTERN
# fgrep --initial-tab PATTERN 

26. Chcete-li hlásit odchylky bajtů ve stylu Unix:

# fgrep -u PATTERN
# fgrep --unix-byte-offsets PATTERN 

27. Pro Výstup nulového bajtu místo znaku, který normálně následuje za názvem souboru:

# fgrep -Z PATTERN
# fgrep --null PATTERN 

28. Chcete-li po odpovídajících řádcích vytisknout NUM řádků kontextu na konci:

# fgrep -A NUM PATTERN
# fgrep --after-context=NUM PATTERN

29. Chcete-li vytisknout NUM řádků úvodního kontextu před odpovídajícími řádky:

# fgrep -B NUM PATTERN
# fgrep --before-context=NUM PATTERN

30. Chcete-li vytisknout NUM řádků výstupního kontextu:

# fgrep -C NUM PATTERN
# fgrep --context=NUM PATTERN

31. Chcete-li zpracovat binární soubor, jako by to byl text:

# fgrep -a PATTERN /tmp/bin
# fgrep -text PATTERN /tmp/bin 

32. Předpokládejme, že soubor je typu TYPE:

# fgrep --binary-files=TYPE PATTERN 

33. Pro Pokud je vstupním souborem zařízení, FIFO nebo zásuvka, zpracujte jej pomocí AKCE:

# fgrep -D ACTION PATTERN
# fgrep --devices=ACTION PATTERN

34. Komu Pokud je vstupním souborem adresář, použijte ke zpracování AKCI:

# fgrep -d ACTION PATTERN
# fgrep --directories=ACTION PATTERN 

35. Chcete-li přeskočit soubory, jejichž základní název odpovídá GLOB:

# fgrep --exclude=GLOB PATTERN 

36. Chcete-li přeskočit soubory, jejichž základní název se shoduje s kterýmkoli z globů názvů souborů načtených z FILE:

# fgrep --exclude-from=FILE PATTERN

37. Chcete-li vyloučit adresáře odpovídající vzoru DIR z rekurzivního vyhledávání:

# fgrep --exclude-dir=DIR PATTERN 

38. Chcete-li zpracovat binární soubor, jako by neobsahoval odpovídající data:

# fgrep -I PATTERN 

39. Chcete-li hledat pouze soubory, jejichž základní název odpovídá GLOB:

# fgrep --include=GLOB 

40. Chcete-li číst všechny soubory v každém adresáři, rekurzivně:

# fgrep -r PATTERN
# fgrep -R PATTERN 

41. Použití ukládání do vyrovnávací paměti na výstupu:

# fgrep --line-buffered PATTERN 

42. Pokud je to možné, použijte ke čtení vstupu systémové volání mmap namísto výchozího čtení:

# fgrep --mmap PATTERN 

43. Chcete-li považovat soubor(y) za binární:

# fgrep -U /tmp/file PATTERN
# fgrep --binary /tmp/file PATTERN 

44. Chcete-li zacházet se vstupem jako se sadou řádků:

# fgrep -z PATTERN
# fgrep --null-data PATTERN 

45. Zobrazení nápovědy:

# fgrep -h 

46. ​​Chcete-li vytisknout číslo verze grep:

# fgrep -V 


Linux
  1. sa Příklady příkazů v Linuxu

  2. Příklady příkazů ac v Linuxu

  3. Příklady příkazů df v Linuxu

  1. 7 Příklady příkazů Linux df

  2. 8 Příklady příkazů Linux TR

  3. du příklady příkazů v Linuxu

  1. Příklady příkazů rm v Linuxu

  2. Příklady příkazů ps v Linuxu

  3. w Příklady příkazů v Linuxu