Jeder Prozess wird in der Ausgabe von aufgelistet ps aux
; ob rennen, schlafen, zombie oder stehen bleiben.
Da Sie den Prozess jedoch mit ausgeführt haben sh abc.sh
, sh
wird in Ihrem Fall die Anwendung (Shell) ausgeführt und nicht abc.sh
. Daher ps aux
wird der Prozess nicht enthalten, abc.sh
aufgrund dessen grep
kein Ergebnis erzielt werden konnte.
Die richtige Art und Weise, wie Sie es hätten verwenden sollen, ist wie folgt:
ps aux | grep sh
Dies gibt möglicherweise auch einen anderen Prozess zurück, bei dem die Zeichenfolge an einer sh
beliebigen Stelle in der Ausgabe von ausgeführt wird ps aux
.
Sie sollten beachten , dass der Prozess „läuft“ wird, wenn der Ausgang von ps aux
seinem hat STAT
wie R
. Wenn es sich um etwas anderes handelt, wird es nicht in der Instanz ausgeführt, in der Sie den Befehl zum Überprüfen der ausgeführten Prozesse ausgelöst haben. Die verschiedenen Prozesszustände finden Sie in der Manpage für ps:
D uninterruptible sleep (usually IO)
R running or runnable (on run queue)
S interruptible sleep (waiting for an event to complete)
T stopped, either by a job control signal or because it is being traced
W paging (not valid since the 2.6.xx kernel)
X dead (should never be seen)
Z defunct ("zombie") process, terminated but not reaped by its parent
Sie können auch den top
Befehl ausführen, um zu überprüfen, ob der Prozess ausgeführt wird oder sich im Ruhezustand befindet und wie viel CPU und RAM er verbraucht. (Dies listet Ihren Prozess erneut auf als sh
).
Wenn Sie jedoch möchten, dass Ihr Prozess als aufgeführt wird abc.sh
, sollten Sie die erste Zeile des Skripts haben, als das Sie ausgeführt werden:
#!/bin/sh
Damit die Shell weiß, welche Anwendung zum Ausführen des Skripts verwendet werden soll (in diesem Fall sh, ändern Sie es in #!/bin/bash
für Bash) und stellen Sie dann dem Prozess ausführbare Berechtigungen zur Verfügung, indem Sie Folgendes verwenden:
chmod +x /path/to/abc.sh
Ersetzen /path/to/
mit dem Speicherort der abc.sh
Datei und führen Sie dann abc.sh
mit
/path/to/abc.sh
erneut durch /path/to/
den Speicherort der abc.sh
Datei ersetzen .
S+
bedeutet