2016-03-24 15 views
-3

は、私はこのようなスクリプトを実行している:それは長いループが含まれていバックグラウンドを実行しているシェルスクリプトをトレースする方法は?

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

このスクリプトをどのように処理して(どの名前でどのIDを作成したのか)、そのプロセスを終了してプロセスを終了できますか?

+0

[bashスクリプトをデバッグする方法は?](http://stackoverflow.com/questions/951336/how-to-debug-a-bash-script) – sashoalm

+0

「私はどのようにトレースできますか?そのスクリプト "。 – sashoalm

+0

しかし、リンクされた質問の「bash -x」は役に立ちませんか?私はそれがあなたに情報を与えると思います、何が始まったのですか?私はPIDについて知りません。 – sashoalm

答えて

0

ものの、@ hek2mglの答えは大きな助けたとの溶液に道を開いたが、実際のソリューションは少し異なっている:ターミナルで

タイプfg

と入力し、と入力してください。 + zです。

0

タイプfg端末にあります。次にと入力して + cと入力します。

参照:Job Control Commands

+0

私はこのような数字を見ました: '[1] 25647'しかし、それを殺す方法。私はすでに 'pkill -f 25647'を使用していて、まだ動作しています – tod

+0

Ctrl + cは何も応答していません – tod

+0

' pkill'はプロセス* name *を引数として取ります。この場合、 'kill -9 25647'を使用してください。プロセスを開始したシェルと同じシェルにいる場合は、 'kill -9%1 'を発行することもできます。 Bashは '%1'を対応するPIDに変換します。 – hek2mgl

関連する問題