grep mehrere strings

dosenfleisch

dosenfleisch

Foren As
hallo,

ich schaue mit ps aux | grep prog
ob ein prog läuft.
wenn ich nach zwei programmen suche, dann nutze ich den grep-befehl eben zweimal, also
ps aux | grep prog1
ps aux | grep prog2

gibt es für grep die möglichkeit, das in einem rutsch zu erledigen? also z.b.:

ps aux | grep prog1 -a grep prog2
 
Hi,

die man-page meines grep (GNU grep) 2.5.1 sagt u. a. folgendes:
BESCHREIBUNG
grep durchsucht die angegebenen Dateien (oder die Standardeingabe) nach einem Ausdruck und gibt die
entsprechenden Zeilen aus. Der Status von grep ist 0, wenn der Ausdruck gefunden wurde und sonst 1.

Als Ausdruck akzeptiert grep reguläre Ausdrücke mit den folgenden Steuerzeichen:
...
\| die durch den Operator \| verbundenden Argumente werden oder verknüpft
...

Dies funktioniert z. B. so:
Code:
#> echo -e "eins\nzwei\ndrei" | grep 'zwei\|drei'
zwei
drei

Gruß Daniel
 
ah, ich habe nur grep --help aufgerufen und dort konnte ich sowas nicht finden.
das funktioniert jetzt:

Code:
ps aux | grep 'kwrite\|opera\|kded'| grep -v grep

danke
 
Oder so: ps aux | grep -E "[k]write|[o]pera|[k]ded|ash"
 
das geht auch. danke.
habe die option -E auch gefunden, konnte auch einen zusammenhang mit meinem problem erkennen, aber leider nicht sinnvoll umsetzen.
 
Und für ganz "Faule" => 'egrep'

Code:
egrep 'foo|bar|bla|blubb' /foo/bar/

Oder hier eben:

Code:
ps aux|egrep 'foo|bar|bla|blubb'|grep -v grep

Greetz,

RM
 
Wenn es viele sind, schreib es in eine Datei und verwende die Option -f

Code:
grep -f suchmusterdatei input

Gruß Wolfgang
 

Ähnliche Themen

Verzeichnis mit 1200 Dateien auf Verweise in Textdateien checken

Skript soll nicht doppelt laufen... kill pkill pid cron

Keine grafische Oberfläche (Debian Installation)

Welches Linux/Unix für ehemaligen OSX Nutzer?

Rückgabe eines Befehls

Zurück
Oben