GNU/Linux >> Znalost Linux >  >> Linux

Pomocí grep vyhledejte řetězec, který má v sobě tečku

grep -F -r '0.49' * považuje 0,49 za "pevný" řetězec namísto regulárního výrazu. Tím je . ztratí svůj zvláštní význam.


grep používá regulární výrazy; . znamená "jakýkoli znak" v regulárním výrazu. Pokud chcete doslovný řetězec, použijte grep -F , fgrep , nebo escapujte . na \. .

Nezapomeňte svůj řetězec zabalit do dvojitých uvozovek. Nebo byste měli použít \\.

Váš příkaz by tedy musel být:

grep -r "0\.49" *

nebo

grep -r 0\\.49 *

nebo

grep -Fr 0.49 *

Musíte kódovat . jako "0\.49" .

A . je metaznak regulárního výrazu, který odpovídá libovolnému znaku (kromě nového řádku). Chcete-li odpovídat doslovnému období, musíte mu uniknout.


Linux
  1. Jak najít konkrétní text pomocí GREP v systému Linux

  2. Jak mohu vyhledat víceřádkový vzor v souboru?

  3. Výstup roury, který se má použít jako vyhledávací specifikace pro grep v Linuxu

  1. Je potřeba regulární výraz (grep) pro víceřádkové vyhledávání

  2. Použití grep a sed k nalezení a nahrazení řetězce

  3. Jak zadat více mezer pro oddělovač pomocí řezu?

  1. Jak najít všechny soubory, které neobsahují textový řetězec?

  2. Jak hledat přesné slovo, pokud má řetězec v sobě tečku

  3. Hledání řetězce ve více souborech v systému Linux