= Jobs 組込みコマンド
:encoding: UTF-8
:lang: ja
//:title: Yash マニュアル - Jobs 組込みコマンド

dfn:[Jobs 組込みコマンド]はシェルが有している{zwsp}link:job.html[ジョブ]を表示します。

[[syntax]]
== 構文

- +jobs [-lnprs] [{{ジョブ}}...]+

[[description]]
== 説明

Jobs コマンドはシェルが現在有している{zwsp}link:job.html[ジョブ]の名前や状態を表示します。

標準では各ジョブについて以下の情報を一行ずつ表示します。

- ジョブ番号
- 現在のジョブ・前のジョブを示す記号 (+&#x2B;+ または +-+)
- 状態
- コマンド名

[[options]]
== オプション

+-l+::
+--verbose+::
ジョブを構成しているパイプラインの要素ごとにプロセス ID と状態とコマンド名を表示します。

+-n+::
+--new+::
状態が変化してからまだ一度も表示していないジョブだけを表示します。

+-p+::
+--pgid-only+::
ジョブのプロセスグループ ID だけを表示します。

+-r+::
+--running-only+::
実行中のジョブだけを表示します。

+-s+::
+--stopped-only+::
停止中のジョブだけを表示します。

[[operands]]
== オペランド

{{ジョブ}}::
表示するジョブの{zwsp}link:job.html#jobid[ジョブ ID] です。一つも指定しない場合は全てのジョブを表示します。
+
非 link:posix.html[POSIX 準拠モード]ではジョブ ID の先頭の +%+ は省略できます。

[[exitstatus]]
== 終了ステータス

エラーがない限り jobs コマンドの終了ステータスは 0 です。

[[notes]]
== 補足

Jobs コマンドは{zwsp}link:builtin.html#types[必須組込みコマンド]です。

POSIX で規定されているオプションは +-l+ と +-p+ だけです。従って link:posix.html[POSIX 準拠モード]ではこれ以外のオプションは使えません。また POSIX 準拠モードでは、+-l+ オプション指定時、プロセスごとではなくジョブごとに状態を表示します。

Yash では、ジョブのプロセスグループ ID はジョブを構成するパイプラインの最初のコマンドのプロセス ID に一致します。

// vim: set filetype=asciidoc expandtab:
