jobs - シェルで実行しているジョブを確認する

スポンサーリンク

jobsコマンドはbashの組み込みコマンドで、シェルで実行しているジョブを確認できます。シェルでのジョブは'%'の文字から始まるジョブスペックで指定できます。

ジョブスペックはジョブをファアグラウンド実行にするfgコマンドやバックグラウンド実行にするbgコマンド、ジョブを終了させるkillコマンド等で利用できます。

スポンサーリンク

jobsコマンドの利用例

シェルでのジョブを確認
(オプションなし)

jobsコマンドはシェルで実行しているジョブを確認することができます。ジョブには数字が書かれ、killコマンド等のコマンドで'%1'や'%2'のようなジョブスペックでそのジョブを指定できます。

コマンド例と実行結果

 

数字の後に記述されている'+'や'-'の記号は現在のジョブと前のジョブを表しています。
'+'の記号は現在のジョブを表していて、ジョブスペックでは'%+'を利用して参照することができます。また、現在のジョブは他にも'%%'や'%'の記号で参照することもできます。

'-'の記号は現在のジョブからひとつ前のジョブを表していて、'%-'を利用して参照できます。また、ジョブが一つしかない場合、'%-'はそのジョブが参照されます。

また、jobsコマンドはジョブスペックを指定することでそのジョブについての情報をリストできます。

コマンド例と実行結果

 

 

 

プロセスIDも表示
(-lオプション)

-lオプションを用いることで、通常のjobsコマンドで表示される情報にプロセスIDが追加されて表示できます。

コマンド例と実行結果

 

 

 

プロセスIDのみを表示
(-pオプション)

-pオプションを用いることで、プロセスグループのリーダーのプロセスIDのみを表示できます。

コマンド例と実行結果

 

 

 

実行中のジョブのみを表示
(-rオプション)

-rオプションを用いることで、実行中のジョブのみを表示できます。

コマンド例と実行結果

 

 

 

停止中のジョブのみを表示
(-sオプション)

-sオプションを用いることで、停止中のジョブのみを表示できます。

コマンド例と実行結果

 

 

 

ジョブスペックをプロセスグループIDに置き換えてコマンドを実行
(-xオプション)

-xオプションは、jobsコマンドの他のオプションとは少し異なり、ジョブスペックを対応するプロセスグループIDに置き換えてコマンドを実行するオプションになります。

コマンド例と実行結果

 

 

 

参考

Bash Reference Manual