假设test.sh
有一个 bash 脚本,该脚本为空或者仅包含。当脚本在后台运行时,打印到控制台的和exit 0
有什么意义?1
16320
b@sam:~/Documents/bashscripts$ ./test.sh &
[1] 16320
b@sam:~/Documents/bashscripts$
[1]+ Done ./test.sh
b@sam:~/Documents/bashscripts$
然后,如果用户在命令提示符下按下 ENTER 键,如上图所示,将出现另一行,并显示以下内容
[1]+ Done ./test.sh
1
数字和符号的意义是什么+
?
答案1
[1]
是后台作业编号,用于 shell 内建命令,例如fg
和,bg
它们管理在同一个 shell 中运行的多个任务。jobs
列出当前作业。
16320
是任务的进程 ID 号,如果您需要kill
它或类似的东西,它很有用。
[1]+ Done
表示后台进程已退出。由于您使用 请求在后台运行该进程./test.sh &
,因此它不会等待进程完成就给您一个新的提示(尽管它几乎立即完成)。因此,shell 会在下次给您提示时通知您。
如果有多个作业正在运行,则表示+
当前(最近)的作业。
查看bash 手册了解更多信息。