
當我運行一堆後台作業時
for s in {1,2,3}; do command_$s &; done;
jobs
我可以使用命令查看所有內容
$ jobs
[2] running command_1
[3] - running command_2
[4] + running command_3
我知道第一列是 ID(例如我可以kill -9 %2
殺死command_
)
但是 和 缺少其中任何一個意味著什麼+
呢-
?運行man jobs
並jobs -h
不起作用。
答案1
在裡面bash 資訊手冊,第 7.1 章「作業控制基礎」中有描述:
作業號 n 可以稱為「%n」。符號「%%」和「%+」指的是 shell 的目前作業概念,即最後一個在前台停止或在背景啟動的作業。單一「%」(沒有附帶的作業規範)也指目前作業。可以使用“%-”引用前一個作業。如果只有一個作業,則「%+」和「%-」都可以用來指稱該作業。
在與作業相關的輸出中(例如,指令的輸出
jobs
),目前作業總是會以「+」標記,前一個作業以「-」標記。