No.081プロセスとジョブ

pidof

ピーアイディーオブ・PID検索

知識レベル 基礎安全に試せる一般ユーザーで使える

プログラム名からPIDを取得します。単純な稼働確認には便利ですが、検索条件の細かさではpgrepのほうが柔軟です。

答えよく使う形

  1. 単純な名前検索でPIDを取得できます
  2. 最初の一件だけ表示します
  3. 一致名のスクリプトを実行中のシェルも対象に含めます
visitor@goodly: ~

$ sleep 300 & pidof sleep

12345

$ pidof sshd

$ pidof -s cron

どんなコマンド?

こんなときに

単純な存在確認、名前からのPID取得、手元での軽い調査に使います。

pidofは、指定したプログラム名に一致する実行中プロセスのPIDを表示するコマンドです。短い書式で使えるため、単純な存在確認やPID取得には便利です。

一方で、名前一致の考え方やオプションの豊富さではpgrepのほうが柔軟です。ユーザー絞り込みや完全コマンドライン一致が必要ならpgrepを選んだほうが安全なことが多くあります。

また、pidofはPOSIX標準ではなく、環境によって未導入だったり実装差があったりします。

書き方とオプション

組み立ててみるオプションを押すと、下の1行に足されます。もう一度押すと外れます。

$ pidof

使用例と実行結果

行を押すとコピーできます。

12345
単純な名前検索でPIDを取得できます。

まず安全に試す

3分ミッション

手を動かすと覚えやすくなります。できたものに印を付けてください(この端末に残ります)。

0 / 1

つまずいたとき

pidofが見つからない

原因対象環境に未導入です。

こうするパッケージ導入有無を確認し、代替としてpgrepも検討します。

複数PIDが返って想定が崩れた

原因同名プロセスが複数動作しています。

こうする-sで一件に絞る前に、本当に一件でよいかを確認します。

終わったときの数(戻り値)

$ echo $?

  • 0一致するPIDが見つかりました。
  • 1一致するPIDが見つかりませんでした。
  • >1不正なオプションなどで処理できませんでした。

気をつけることと入れ方

気をつけること

危険度は低いですが、同名プロセスが複数あると複数PIDが返ります。後続処理で一件だけを想定すると誤作動の原因になります。

環境による違い

pidofは標準化されたコマンドではなく、導入有無やオプションに実装差があります。最小構成では未導入のことがあるため、移植性を優先するならpgrepも候補です。

確かめた環境2026-04-09 に確認

よくある質問

pgrepとの違いは何ですか。

pidofは名前ベースの単純検索に向き、pgrepはユーザーや完全コマンドラインなど柔軟な条件指定に向きます。

スクリプト名も探せますか。

-xでその名前のスクリプトを実行中のシェルを含めることができます。

pidof を最後まで読みました。

Linux コマンド辞典に戻る82 / 144

Goodly のメニュー