2016-03-24 13 views
-3

Ich habe ein Skript wie folgt ausgeführt werden:Wie verfolgt man ein Shell-Skript, das den Hintergrund ausführt?

script.sh > terminal.txt 2>&1 & 

Es lange Schleifen enthält.

Wie kann ich verfolgen (welcher Prozess mit welchem ​​Namen und welche ID wurde erstellt), dass Skript und den Prozess beenden, um das zu beenden?

+0

Mögliche Duplikate von [Wie ein Bash-Skript zu debuggen?] (Http://stackoverflow.com/questions/951336/how-to-debug-a-bash-script) – sashoalm

+0

Ich reagierte auf "wie kann ich verfolgen dieses Skript ". – sashoalm

+0

Aber 'Bash-X' aus der Frage, verknüpfte ich nicht? Ich nehme an, es würde dir die Info geben, was angefangen hat. Ich weiß jedoch nicht über die PIDs. – sashoalm

Antwort

0

Obwohl @ hek2mgl ‚s Antwort war eine große Hilfe und ebnete den Weg zur Lösung, aber die eigentliche Lösung ist ein bisschen anders:

Typ fg im Terminal.

Geben Sie dann Ctrl + z ein.

0

Typ fg im Terminal. Geben Sie dann Ctrl + c ein.

See: Job Control Commands

+0

Ich habe eine Nummer wie folgt gesehen: '[1] 25647' aber wie man sie tötet. Ich habe bereits 'pkill -f 25647' verwendet und es läuft immer noch – tod

+0

auch Strg + c gibt keine Antwort – tod

+0

' pkill' nimmt einen Prozess * name * als Argument, keine PID. Verwenden Sie 'kill -9 25647' in diesem Fall. Wenn Sie sich in derselben Shell befinden, in der Sie den Prozess gestartet haben, können Sie auch 'kill -9% 1' ausgeben. Bash übersetzt '% 1' in die entsprechende PID. – hek2mgl

Verwandte Themen