作业控制是bash Shell提供的一项强大功能,它允许你选择在前台还是后台运行程序,即作业。
当使用&将任务放入后台执行即进入bash的作业控制,当任务完成时在控制台会输出一行“[1]+ 已完成 ******”。这时可以使用disown $!或(命令)删除作业控制,就不会再显示了。
^Z //crtl+z 将前台作业送后台,并挂起(暂停执行)
jobs //显示在后台运行的作业
[1]- 运行中 gedit &
[2]+ 运行中 sleep 1000 &
+代表最后放到后台运行的作业
-代表倒数第二个放到后台运行的作业
jobs -l //会显示PID
[1]- 3403 运行中 gedit &
[2]+ 3408 运行中 sleep 1000 &
fg %1 //将作业1恢复到前台继续执行
bg %1 //启动后台停止的作业1
kill %1 //杀掉作业1
kill -9 %1 //强制杀掉作业1
disown %1 //将作业1从从作业表中移除,shell不会将其识别为可用的作业(成为一个正常的进程,ps能查看)