命令描述
/usr/bin/jobs,因為此環境沒有适用的作業來處理。基于這個原因,jobs命令實現為一個Kornshell或POSIXshell的常規内建命令。
如果指定了-p标志,對于每一個進程标識,輸出構成一行。如果沒有指定标志,标準輸出為帶以下字段的幾行:
job-number指出進程組号,以和wait、fg、bg和kill命令一起使用。當和這些命令一起使用時,在作業号前面加上一個“%”(百分号标志)。
current一個“+”(加标志)标識了将被fg或bg命令作為缺省值使用的作業。這個作業标識也能夠使用%+(百分号、加号)或%%(雙百分号)來指定。
如果當前缺省作業退出,就用一個“-”(減号标志)來标識将要成為缺省作業的作業。這個作業标識也可以用%-(百分号、減号)來指定。
對于其他的作業,current字段是一個空格字符。僅一個作業能夠用+來标識,并且僅一個作業能夠用一個-來标識。如果有一個單一挂起作業,它就成為當前作業。如果存在至少兩個挂起的作業,那麼前面的作業被挂起。
state顯示以下值之一(在POSIX的語言環境下):
Running
表示此作業沒有被信号挂起并沒有退出。
Done
表示此作業已經完成并返回退出狀态0。
Done(code)
表示此作業已經正常完成和退出并返回指定的非零退出狀态碼。這個代碼用一個十進制數來表示。
Stopped
表示此作業已經挂起。
Stopped(SIGTSTP)
表示SIGTSTP信号挂起作業。
Stopped(SIGSTOP)
表示SIGSTOP信号挂起作業。
Stopped(SIGTTIN)
表示SIGTTIN信号挂起作業。
Stopped(SIGTTOU)
表示SIGTTOU信号挂起作業。
command給shell的有關命令。
如果指定了-l标志,就把一包含進程組标識的字段插入到state字段之前。另外,在一個進程組中更多的進程可以輸出到一些獨立行中,隻使用job-number和command字段。
标志
-l(小寫L)提供了更多的關于列出的每一個作業的信息。此信息包括了作業号、當前作業、進程組标識、狀态和啟動作業的命令。
-n顯示自從最後一次通知後停止或退出的作業。
-p顯示了所選定的作業的進程組引導符的進程标識。
在缺省情況下,jobs命令顯示了所有已停止作業的狀态、所有的在後台正在運行的作業和那些狀态已經更改但沒有被shell報告的作業。
退出狀态
返回下面的退出值:
0成功完成。
>0發生一個錯誤。
命令示例
1.要顯示當前環境下的作業的狀态,請輸入:
jobs-l
屏幕輸出與以下輸出類似的報告:
+[4]139RunningCC-Cfooc&
-[3]465Stoppedmailmorris
[2]687Done(1)foo.bar&
2.要顯示那些名字以“m”打頭的作業的進程标識,請輸入:
job-p%m
使用示例1中報告的作業,屏幕顯示以下進程标識:
465
文件
/usr/bin/ksh包含Kornshelljobs内置命令。
/usr/bin/jobs包含jobs命令。