
ターミナルウィンドウを2つ開いています。
ターミナル1 - プロセス1を実行します
ターミナル2 - プロセス2を実行します
次に、各ウィンドウでCtrl+を使用して両方のプロセスを終了します。Z
ターミナル 2 に入力してkillall -9 process1
も、フィードバックがありません。
後で、ターミナル 1 では、プロセス 1 は実際には終了していないことに気付きました。
ターミナル 2 コンソールからターミナル 1 のプロセス 1 を強制終了するにはどうすればよいですか?
答え1
#!/bin/bash
process="$1"
null=/dev/null
if pkill -9 "$process" &> $null ; then
if pgrep "$process" &> $null ; then
echo "$process is still running"
exit 1
fi
echo "$process killed successfully"
exit 0
fi
echo "Process $process not found"
exit 1
使用方法:./script.sh process1
の出力を確認しpkill
、pgrep
それぞれの&> $null