+/- 在后台工作完成后

ddz*_*wmm 21 shell job-control background-process

在后台运行作业

$ command &
Run Code Online (Sandbox Code Playgroud)

完成后,终端打印

[n]+    command
Run Code Online (Sandbox Code Playgroud)

或者

[n]-    command
Run Code Online (Sandbox Code Playgroud)

所以有时它是一个加号,有时它是一个减号跟随[n]。

加/减是什么意思?

hee*_*ayl 20

他们要区分当前和以前的工作;最后一个作业和倒数第二个作业用于两个以上的作业,分别+用于最后一个和-倒数第二个。

来自man bash:

可以使用 引用以前的作业%-。如果只有一个工作,%+并且%-两者都可以用来指那个工作。在与作业有关的输出中(例如,jobs 命令的输出),当前作业始终标记为+,而前一个作业标记为 -。

例子:

$ sleep 5 &
[1] 21795

$ sleep 5 &
[2] 21796

$ sleep 5 &
[3] 21797

$ sleep 5 &
[4] 21798

$ jobs
[1]   Running                 sleep 5 &
[2]   Running                 sleep 5 &
[3]-  Running                 sleep 5 &
[4]+  Running                 sleep 5 &

$ 
[1]   Done                    sleep 5
[2]   Done                    sleep 5
[3]-  Done                    sleep 5
[4]+  Done                    sleep 5
Run Code Online (Sandbox Code Playgroud)