pkillとKillallの違いは何ですか?

pkillとKillallの違いは何ですか?

私はpkillそこよりも多くのフィルタリングルールがあることを知っていますkillall。私の質問は、次の違いは何ですか?

pkill [signal] name

そして

killall [signal] name

killall私はこれがより効率的で、nameプログラムに一致するすべてのプロセスとサブプロセスを(そして再帰的に)終了することを読んでいます。pkillあなたもこのようなことをしませんか?

ベストアンサー1

これpgrepそしてpkillユーティリティはSunのSolaris 7に導入されました。g33klordが指摘しました、実行中のプロセスの名前と一致するパターンを引数として使用します。pgrep一致するプロセスのリストのみが印刷されますが、指定されたpkill信号(またはSIGTERMデフォルト値)がプロセスに送信されます。pgrepとの間の共通のオプションとセマンティクスは、注意を払って最初に を使用して一致するプロセスのリストを確認し、次に を使用してプロセスを終了し続けたい場合に便利です。そして提供されるpkillpgreppkillpgreppkillプロセス/proc次のような他のファイルシステムユーティリティも提供するパッケージpstopfreeuptime他のものの間。

このkillallコマンドは以下で提供されます。いくつかの雑多なただし、デフォルトでは、pkill信号が送信されるプロセスを決定するときにパラメータ名と正確に一致します(最大最初の15文字)。 15文字より長い名前の正確な一致を要求する-eオプションを指定できます。これと比較してより安全です。指定されたパラメータにスラッシュ()文字が含まれている場合、パラメータはファイル名として解釈され、その特定のファイルを実行するプロセスがシグナル受信者として選択されます。プロセス名の正規表現の一致も、オプションを通じてサポートされます。--exactkillallpkill/killall-r--regexp

他の違いもあります。killallたとえば、コマンドには期間ごとにプロセスを一致させるオプション(-o、、、、、--older-than-yがあり、(このオプションを使用して)特定の端末のプロセスのみを終了するように指示できます。明らかに、両方のコマンドには特定のニッチがあります。--younger-thanpkill-t

ご注意ください、killallシステムサブアイテムのコマンドUnixシステムV(特に太陽の太陽IBM AIXそしてHPのHP-UX)殺すみんな特定のユーザーがシャットダウンできるプロセスで、rootとして実行している場合はシステムを効果的にシャットダウンします。

Linux psmiscユーティリティが次に移植されました。BSD(そして拡大してMac OS X)、したがって、killall「名前でプロセスを終了する」という意味に従います。

おすすめ記事