nohup 消息中“+”或“-”的含义

nohup 消息中“+”或“-”的含义

当带有 nohup 的命令如下时:

nohup python [program name] > result_logs &

完成后,会出现一些提示,例如:

[1]  - [process_id] done       nohup [program name] >result_logs

但我不太明白这里的“-”号的含义,有时它会带有“+”,例如:

[1]  + [process_id] done       nohup [program name] >result_logs

有人知道这句话的意思吗?

答案1

-表示以前的工作,+表示当前的工作

来自man bash(部分JOB CONTROL):

有多种方法可以在 shell 中引用作业。字符 % 引入了工作规范 (jobspec)。作业编号 n 可以称为 %n。还可以使用用于启动作业的名称的前缀或使用出现在其命令行中的子字符串来引用作业。例如,%ce 指的是已停止的 ce 作业。如果一个前缀匹配多个作业,bash 会报告错误。另一方面,使用 %?ce 指的是在其命令行中包含字符串 ce 的任何作业。如果子字符串匹配多个作业,bash 会报告错误。符号 %% 和 %+ 指的是 shell 的当前作业概念,即最后一个在前台停止或在后台启动的作业。可以使用 %- 引用前一个作业。如果只有一个作业,%+ 和 %- 都可以用来指代该作业。 在与作业相关的输出中(例如,jobs 命令的输出),当前作业始终用 + 标记,前一个作业用 - 标记。 单个%(没有随附的工作规范)也指当前工作。

相关内容