web-dev-qa-db-ja.com

kill-プロセスが見つかりません

私が持っているプロセスをリストするとき:

root @ adam-ThinkPad-T410:〜#ps -e | grepシグナル
11641ポイント/ 000:00:00シグナル
11642ポイント/ 000:00:00シグナル
11643 pts/0 00:00:00シグナル

しかし、私が殺したいとき、私はそのようなプロセスがないという情報を受け取ります:

root @ adam-ThinkPad-T410:〜#killall -9 11641
11641:プロセスが見つかりません

私はLinuxにまったく慣れておらず、少し混乱しています。「kill11641」も試しましたが、それでも運がありません。

5
xwhyz

killallには、プロセス名が必要です。例: killall signalsこれはそのようなすべてのプロセスを強制終了します。それ以外の場合は、プロセスID(psから正しく抽出したもの)を使用する必要があります:kill -9 <PID> どこ -9SIGKILLであり、かなり失礼で、通常はkill <PID>で十分です(ただし、そのセムはあなたのケースでは機能しません)。 man killallおよびman killはあなたの友達です。

7
mpy

Grepコマンドは、別のコマンドからパイプすると、自身をプロセスとして返します。 process 11641はgrepプロセスであり、本質的に終了しています(そして、終了しようとしている方法で強制終了することはできません)。

これを試してください:

ps -e | grep signals | grep -v grep

これにより、基本的にgrepプロセスが結果から削除されます。

6
Kata