キルオールシステム全体

キルオールシステム全体

ターミナルウィンドウを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

の出力を確認しpkillpgrepそれぞれの&> $null

関連情報