Bash: Wie kann ich grep eine Zeile für mehrere Instanzen der gleichen Zeichenfolge?

Ich habe mehrere Zeilen, die wie folgt Aussehen:

aaaaaaaaxzaaaaaaaaaaaaaa
bbbbbbbbbbbbxzbbbbbbxzbb
ccxzcccccccccccccccccxzc
dddddddxzddddddddddddddd

In zwei von diesen Linien, es gibt zwei Instanzen xz Zeichen. Ich möchte grep zu suchen xz zweimal in der gleichen Zeile und die Ausgabe der Zeilen, dass es übereinstimmungen auf. Wenn xz erscheint einmal, ich will es gar nicht wissen.

Den folgenden Befehl ausführen:

cat lines | grep "xz"

Sagt mir jede Zeile, die mit xz auf, aber ich will nur sehen, Linien, die mit " xz " erscheinen zweimal.

Wie kann ich die Suche wiederholen in der gleichen Zeile?

  • cat lines | grep -oP 'xz.*xz'?
  • das funktioniert stribizhev, danke
  • Keine Notwendigkeit für -P oder -o.
Schreibe einen Kommentar