トップページへ

pkillを特定のプロセスに絞る方法

小粋空間 » Linux » pkillを特定のプロセスに絞る方法

pkillを特定のプロセスに絞る方法を紹介します。

1.問題点

pkillはプロセス名を指定して強制終了させるためのコマンドです。

たとえば、実行中のtest.shを終了させる場合、

$ pkill test.sh

とすればプロセスを終了できます。

ただ、プロセス名で検索するため、終了させたくない同名の他のプロセスまで終了してしまいます。

これを特定のプロセスに絞りたいのですが、方法が分かりません。

ということで、pkillを特定のプロセスに絞る方法を紹介します。

2.pkillを特定のプロセスに絞る

pkillを特定のプロセスに絞る方法として、"-t"オプションで実行中のターミナル(TTY)を指定します。

$ pkill -t pts/59 test.sh

または

$ pkill --terminal pts/59 test.sh

"-t"または"--terminal"は、ターミナルを指定するオプションです。

これで終了させたいプロセスを、特定のターミナルだけに絞ることができます。

ターミナルを調べるには、プロセス実行前にttyコマンドを実行しておきます。

下記の例では、ターミナルが"/dev/pts/59"であることを示しています。

$ tty
/dev/pts/59

なお、"-t"オプションにターミナルを指定する場合、先頭の"/dev/"は省略します。

また、複数のターミナルを指定する場合はカンマ区切りで指定します。

$ pkill --terminal pts/59,pts/52 test.sh

« 前の記事へ

次の記事へ »

トップページへ