Zum Inhalt springen

mit Skript prüfen ob ein Prozess läuft


Empfohlene Beiträge

Geschrieben

du musst schon sagen was das script dir dann ausgeben soll!

soll es dich warnen wenn er nicht läuft, oder dir ein ok zurück geben wenn er läuft oder wie? da gibt es viele möglichkeiten.

hier mal ein beispiel:


ps -fe|grep "ssh localhost"|grep -v grep|awk '{print $2}'

dieses dingens gibt dir die PID von dem Prozess "ssh localhost" zurück wenn dieser läuft. wenn er nicht läuft gibts nix :WD

Geschrieben

Hi,

ich würde gerne mein script abbrechen wenn er schon läuft ...

muss ich wohl mit nem if machen

wie mach ich das wenn mehrere ergebnisse kommen ???

kann ich das dann auch mit if machen ??

Gruß Scratch

Geschrieben

Hallo,

ps -fe|grep "sh localhost"|awk '{print $2}'

interessant. Mich würde interessieren, warum das so ist - habe ich was in der man-Page vom grep überlesen? Da spart man sich ja einen Prozess - super!

Geschrieben

jou, ich wusste das auch net, habs immer mit dem 2. grep gemacht. kuhler tipp :hodata

so in der art kannst dus machen:


export BLA=`ps -fe|grep "[s]sh localhost"|awk '{print $2}'`

if [[ $BLA != $UFF ]]; then echo läuft; else echo läuft nicht; fi

was dann genau passieren soll musste dir selbst ausdenken.

will dir ja net die ganze arbeit wegnehmen :D :mod:

Geschrieben

Hallo,

Hallo,

interessant. Mich würde interessieren, warum das so ist - habe ich was in der man-Page vom grep überlesen? Da spart man sich ja einen Prozess - super!

bei grep kann man ja Wildcards benutzen z.B.

ps -ef | grep fest

findet jeden Prozess in dem der String "fest" vorkommt.

ps -ef | grep [t,f]est

findet jeden Prozess in dem der String "fest" oder "test" vorkommt.

Das Problem ist ja das der grep sich selber in der Prozessliste auch findet, da

je der gesuchte String (hier "httpd") auch bei ihm als Argument dabei ist:

# ps -ef |grep httpd

xxx 23361 14740 0 Jan 17 ? 0:00 httpd

xxx 14416 22775 0 12:30:05 pts/2 0:00 grep httpd

Und um das Problem zu umgehen sucht man nach dem ersten Buchstaben einfach mit der Mustererkennung.

# ps -ef |grep [h]ttpd

xxx 23361 14740 0 Jan 17 ? 0:00 httpd

Hier werden alle Prozesse gefunden die den String "httpd" enthalten.

Der grep-Prozess wird nicht gefunden, da der ja

xxx 14416 22775 0 12:30:05 pts/2 0:00 grep [h]ttpd

heisst und das trifft auf die Mustererkennung ja nicht zu.

Verstanden?

cya

alligator

Geschrieben
# ps -ef |grep [h]ttpd

xxx 23361 14740 0 Jan 17 ? 0:00 httpd

Hier werden alle Prozesse gefunden die den String "httpd" enthalten.

Der grep-Prozess wird nicht gefunden, da der ja

xxx 14416 22775 0 12:30:05 pts/2 0:00 grep [h]ttpd

heisst und das trifft auf die Mustererkennung ja nicht zu.

Verstanden?

cya

alligator

Echt, genial

:e@sy

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...