Linux 命令行入门教程
49. 作业控制:& / jobs / bg / fg / nohup
本教程共 90 篇 · 第 50 篇
49. 作业控制:& / jobs / bg / fg / nohup
“作业”就是当前 shell 里跑着的任务。作业控制让你在前后台之间搬动它们。
最省事的是启动时加 &,直接丢后台:
sleep 300 &
回显 [1] 12345,[1] 是作业号,12345 是 PID。
要看看有哪些作业?
jobs
正在前台跑的,按 Ctrl+Z 能暂停(Stopped)。暂停后怎么复活到后台?
bg %1
bg 把作业 1 接着在后台跑。想拉回前台接着操作:
fg %1
Note
bg/fg不带参数时,操作的是最近那个作业(%+)。%1里的数字就是上面jobs输出方括号里的作业号,从 1 开始编号。
后台进程有个坑:你一关终端,它常被一起带走。要让它脱离终端活下去:
nohup sleep 300 &
nohup 忽略”挂断”信号,输出默认追加到 nohup.out。
小结:& 起后台、jobs 查、bg/fg 搬、nohup 防关终端被杀。这四个配合,长任务不用干等。