GNU/Linux >> Linux の 問題 >  >> Linux

Linuxの例でPgrepとPkillコマンドを学ぶ

Linuxは、開発者と愛好家の両方に愛されています。 WindowsやOSXなどのオペレーティングシステムでは通常できないことがたくさんできます。

Linuxは、プログラマー、開発者、およびオペレーティングシステムを正しく理解したい人にとって最高のオペレーティングシステムです。現在、Linuxには多くの機能と機能があります。今日は、Linux pgrepとpkillコマンドについて学び、それらを使用してLinuxエクスペリエンスを価値のあるものにする方法を学びます。名前が示すように、pgrepコマンドは名前に基づいてプロセスを検索するために使用され、pkillコマンドは名前に基づいてプロセスを終了または強制終了します。

前提条件

  • Linuxオペレーティングシステム(スクリーンショットはcentos / rhelマシンからのものです)

pgrepコマンド

構文:#pgrep [options] pattern

ほとんどのLinuxユーザーは、特定の単語や文字を検索するために使用されるgrepコマンドを認識しています。 pgrepはほぼ同じように機能します。 pgrepコマンドは、使用時にシステムで実行されているプロセス(名前に基づく)を検索するときに使用されます。

pgrepコマンドの例を詳しく見ていきましょう

例:1)特定のユーザーが所有するプロセスIDを一覧表示します(-u)

pgrepを使用すると、指定した基準に一致するプロセスIDが一覧表示されます。たとえば、次のように入力します;

[[email protected] ~]# pgrep -u apache httpd
1274
1275
1278
1282
1283
1284
1286
1291
[[email protected] ~]#

システムは、apacheユーザーが所有するhttpdと呼ばれるすべてのプロセスを一覧表示します。

例:2)複数のユーザーが所有するすべてのプロセスを一覧表示する

rootおよびapacheユーザーが所有するすべてのプロセスを一覧表示し、次のコマンドを実行するとします。

[[email protected] ~]# pgrep -u apache,root

ここでは、ユーザーはコンマ(、)で区切られています

出力:

例:3)マッチングプロセスのカウント数(-c)

apacheとrootユーザーが所有するプロセスの数をカウントしたいとします。以下のコマンドを実行します

[[email protected] ~]# pgrep -u apache -c
8
[[email protected] ~]# pgrep -u root -c
95
[[email protected] ~]#

上記のコマンドでは、「-c」オプションを使用して、ユーザーに関連付けられているプロセスの数をカウントしています。

例:4)プロセスIDとプロセス名(-l&-a)を一覧表示する

ユーザーに関連付けられているプロセスIDとプロセス名を一覧表示し、 -lを使用するとします。 または-a pgrepコマンドのオプション。 -lオプションはプロセス名のみをリストしますが、-aはプロセス名のフルパスをリストします

[[email protected] ~]# pgrep -u apache -l
4353 httpd
4354 httpd
4355 httpd
4356 httpd
4357 httpd
4358 httpd
4359 httpd
4360 httpd
[[email protected] ~]#

[[email protected] ~]# pgrep -u apache -a
4353 /usr/sbin/httpd -DFOREGROUND
4354 /usr/sbin/httpd -DFOREGROUND
4355 /usr/sbin/httpd -DFOREGROUND
4356 /usr/sbin/httpd -DFOREGROUND
4357 /usr/sbin/httpd -DFOREGROUND
4358 /usr/sbin/httpd -DFOREGROUND
4359 /usr/sbin/httpd -DFOREGROUND
4360 /usr/sbin/httpd -DFOREGROUND
[[email protected] ~]#

例5)カスタム区切り文字(-d)を使用してユーザーに関連付けられたプロセスIDを一覧表示する

-d」を使用します カスタム区切り文字を使用してユーザーのプロセスIDを一覧表示するpgrepの’オプション。コンマ(、)またはスペースで区切ってapacheユーザーに関連付けられたプロセスIDを一覧表示するとします。

[[email protected] ~]# pgrep -u apache -d,
4353,4354,4355,4356,4357,4358,4359,4360
[[email protected] ~]# pgrep -u apache -d" "
4353 4354 4355 4356 4357 4358 4359 4360
[[email protected] ~]#

例:6)最新のプロセス名とそのID(-n)を一覧表示します

rootユーザーが所有する最新のプロセス名とそのIDを一覧表示するとし、pgrepコマンドの下で実行します

構文:

#pgrep -u -n -l <​​/ P>

[[email protected] ~]# pgrep -u root -n -l
11255 kworker/0:2
[[email protected] ~]#

例:7)最も古いプロセス名とそのID(-o)を一覧表示します

最も古いプロセス名とrootユーザーが所有するIDをリストしたいとします。pgrepコマンドの下で実行します

構文:

#pgrep -u -o -l <​​/ P>

[[email protected] ~]# pgrep -u root -o -l
1 systemd
[[email protected] ~]#

例:8)その名前の検索プロセス

postgresプロセスに関連付けられているすべてのプロセスIDを一覧表示したいとします

[[email protected] ~]# pgrep postgres -l
1233 postgres
1234 postgres
4465 postgres
4469 postgres
[[email protected] ~]#

そして、それが私たちがpgrepを使用する方法です。 pkillコマンドに移りましょう

pkillコマンド

pkillコマンドは、コマンドラインを介してプロセスを強制終了するために使用されます。 killコマンドとは対照的に、pkillでは、終了しようとしているプロセスのIDを入力する必要はありません。

では、pkillをどのように使用しますか?単純で、入力として強制終了するプロセス名を指定してpkillと入力します。

構文:

#pkill[オプション]<パターン>

例:9)プロセスをその名前で強制終了します(pkill {process_name})

たとえば、postgresプロセスを強制終了する場合は、次のように入力します;

[[email protected] ~]# pkill postgres
[[email protected] ~]#

postgresプロセスが実行されている場合、それは即座に終了します。

例:10)別のシグナル(–signal)を送信してプロセスを強制終了する

デフォルトでは、pkillコマンドは「 SIGTERM」を使用します 実行中の信号。このデフォルトのシグナルは、「 –signal」を使用して変更できます。 たとえば、pkillコマンドの「」オプション

[[email protected] ~]# pkill --signal SIGKILL postgres
[[email protected] ~]#

例:11)完全なコマンド(-f)に基づくkillプロセス

-f を使用して、プロセス名ではなく完全なコマンドに基づいてプロセスを強制終了するようにpkillコマンドに指示できます。 オプション。これは何を意味するのでしょうか?システムで2つのpingコマンドが実行されているとします。

ping google.com

ping linuxtechi.com

ここで、要件がpkillを使用して「pinggoogle.com」コマンドを終了することだけである場合。 pkillは次のように使用できます:

[[email protected] ~]# pkill -f "ping google.com"
[[email protected] ~]#

-fオプションが使用されていることに注意してください。使用したことがある場合;

[[email protected] ~]# pkill ping

その後、両方のコマンドが終了します。

最終的な考え

このガイドでは、実際の例を使用して、コマンドpgrepおよびpkillについてすべて学習しました。

要約すると、pgrepは、使用時にシステムで実行されているプロセスを検索するときに使用されるコマンドです。その構文はpgrep[options]patternです。

一方、pkillは、コマンドラインを介してプロセスを強制終了するために使用されます。その構文はpkill[options]

です。

2つのコマンドを使用して、Linuxの機能と柔軟性をさらに活用できます。すべての情報が揃ったので、どう思いますか?コメントを残していただければ、喜んで対応させていただきます。


Linux
  1. 例を含むLinuxTeeコマンド

  2. LinuxでのJQコマンドと例

  3. Linux での pkill コマンドの例

  1. 例を含むwcLinuxコマンド

  2. Linuxのソートコマンドと例

  3. Linux での pgrep コマンドの例

  1. Linuxでのエコーコマンド(例付き)

  2. Linuxでのmanコマンドと例

  3. LinuxでのAWKコマンドと例