• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] pgrep Ergebnis?

MiPl

Hacker
Hi,

ich kriegs nicht hin:

ich möchte in einer IF-Abfrage eine Prozessnummer bearbeiten, doch ich kann das Ergebnis von pgrep nicht interpretieren, wenn die gesuchte App nicht läuft. Derzeit stehe ich hier:

Code:
#!/bin/bash
warten=0

prozess=`pgrep -o -x firefox`
if test -n '$prozess'
        then
                echo "> "$prozess" Prozess beenden"
                `kill $prozess`
#               /bin/sleep $warten
#               /usr/bin/firefox http://localhost:8080/bfAlarm &
        else
                echo "> "$prozess" Firefox läuft nicht"
#                /bin/sleep $warten
#                /usr/bin/firefox http://localhost:8080/bfAlarm &
fi

Bei der test-Funktion klemmt es. Hat jemand einenTipp für mich? Danke!
 

RME

Advanced Hacker
Hallo,

Code:
#!/bin/bash

prozess=`pgrep -o -x firefox`

ret=$?

if [ $ret -eq 0 ]
        then
                echo "> Firefox =" Prozess $prozess
        else
                echo ">" FF läuft nicht.
fi

Gruss,
Roland
 
A

Anonymous

Gast
MiPl schrieb:
Bei der test-Funktion klemmt es. Hat jemand einenTipp für mich? Danke!

den Rückgabewert des letzten Befehls testen und nicht den Inhalt der Variablen, ist hier sicherer.
Code:
prozess=`pgrep -o -x firefox` 
if [ $? == 0 ] 
    then 
         echo $prozess 
    else 
          echo "nix" 
fi

robi

PS. auf diese Idee ist aber schon jemand anders gekommen.
 
Oben