有时候我们需要把终端的命令放到后台去执行,我们可以用“&”,把目前的工作放到后台去暂停,可以用[Ctrl+Z],可以用jobs命令查看目前后台的工作状态
命令格式:jobs [-lrs],在job命令输出上,‘+’代表最近被放到后台的工作号码,‘-’代表最近最后第二个放置到后台中的工作号码
参数说明:
- -l:除了列出job number与命令串之外,同时列出PID的号码
- -r:仅列出正在后台run的工作
- -s:仅列出正在后台当中暂停的工作
可以用fg命令将后台的工作拿到前台来处理
命令格式:fg %jobnumber
参数说明:
- %jobnumber:jobnumber为工作号码(数字),那个%可有可无
可以用bg命令让后台暂停的工作变成运行,参数和fg命令参数一样
上面介绍的‘&’可以把工作放到后台去运行,但是放到后台的工作依旧与终端有关,如果把终端关掉,放在后台的工作同样会被kill,想把工作放到后台,但是也不与终端相关联,可以用nohup命令,nohup命令运行了另外一个命令来阻断所有发送给进程的SIGHUP信号,这样会在退出终端会话是阻止进程退出,注意,nohup并不支持bash的内建命令 友情链接:Linux系统信号
命令格式:nohup [命令与参数] &