GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Verwenden Sie grep, um nach einer Zeichenfolge zu suchen, die einen Punkt enthält

grep -F -r '0.49' * behandelt 0,49 als "festen" String statt als regulären Ausdruck. Das ergibt . seine besondere Bedeutung verlieren.


grep verwendet reguläre Ausdrücke; . bedeutet "beliebiges Zeichen" in einer Regex. Wenn Sie eine wörtliche Zeichenfolge wünschen, verwenden Sie grep -F , fgrep , oder maskieren Sie . bis \. .

Vergessen Sie nicht, Ihren String in doppelte Anführungszeichen zu setzen. Andernfalls sollten Sie \\. verwenden

Ihr Befehl müsste also lauten:

grep -r "0\.49" *

oder

grep -r 0\\.49 *

oder

grep -Fr 0.49 *

Sie müssen . maskieren als "0\.49" .

Ein . ist ein Regex-Metazeichen, das mit jedem Zeichen übereinstimmt (außer Newline). Um einen wörtlichen Punkt zu finden, müssen Sie ihn maskieren.


Linux
  1. Wie finde ich alle Dateien, die keine Textzeichenfolge enthalten?

  2. So finden Sie bestimmten Text mit GREP unter Linux

  3. Verwenden Sie grep, um rückwärts zu suchen

  4. Verwenden von grep und sed zum Suchen und Ersetzen einer Zeichenfolge

  5. Verwenden von grep vs. awk

So schließen Sie in Grep aus

So führen Sie eine Mustersuche in Dateien mit Grep durch

Tipps zur Verwendung des Bildschirms

Linux-Suche nach Zeichenfolgen in Ordnern und Dateien mit ack

Verwenden des Bash-printf-Befehls zum Drucken formatierter Ausgaben

Wie bekomme ich Zeilen, die eine Zeichenfolge in einer Datei enthalten?