バックグラウンドプロセスを開始するスクリプトがあります。
#!/bin/sh
./process1.sh &
./process2.sh &
別のスクリプトを使用してこれらのプロセスを強制終了する必要があります。これが私がしたことです:
#!/bin/sh
# the kill.sh
pid=$(ps | grep './process1.sh' |grep -v grep| awk '{print $1}')
kill -9 $pid
質問時間:
kill.shが呼び出されると、プロセスが停止します。しかし、私はメッセージを受け取ります
「sh:誰を殺すかを指定する必要があります」。何故ですか?
説明したスクリプトを使用してプロセスを強制終了した後、すぐに停止しません。しばらくの間、プロセスがまだ実行されているかのように画面に出力が表示されます。なんで?
プロセスを強制終了するための代替ソリューションは何でしょうか?
私はbusyboxを使用していますが、ユーティリティの選択肢は限られています。