Hi, Ralf Corsepius wrote:
Am Mon, 2002-08-05 um 14.51 schrieb Bernd Brodesser:
* Jan Trippler schrieb am 05.Aug.2002:
On Son, 04 Aug 2002 at 22:10 (+0200), Adalbert Michelic wrote: [...]
Warum nicht so?
ps aux | grep -q [j]ava && export running=TRUE || export running=FALSE
Was ich wieder nicht verstehe: wieso kann man mit [] verhindern, dass grep selbst ein true liefert?
Es wird nach Zeilen gesucht, in der java steht, nicht nach solchen, in denen [j]ava steht. ;) Ebend, zumindest nach meinem Verständnis sollte [j]ava eine Regex sein, die als "java" interpretiert wird.
Doch trotzdem findet sich bei mir der grep selbst ... # ps aux | grep -q foobar && echo "JA" || echo "NEIN" JA
Ist doch auch richtig so, denn : #ps aux | grep foobar [Rest gelöscht] grep foobar findet folgerichtig "grep foobar". "NEIN" sollte folgender Ausdruck liefern und das tut er auch: #ps aux | grep -q [f]oobar && echo "JA" || echo "NEIN" NEIN Denn grep sucht nach "foobar", in der Kommandozeile von grep steht aber "[f]oobar" und das entspricht eben nicht dem Suchmuster !
.. was die ganze Konstruktion in Frage stellt ;) Nö.
Ich verwende meistens eine weitere pipe, die das "grep" einfach "rausfiltert" : Also: # ps aux | grep foobar|grep -v grep && echo "JA" || echo "NEIN" NEIN Gruß Harry