远程登录Linux服务器只有一个终端窗口。当你执行一些耗时程序时,该终端就会被程序占用,这时候你要想执行其他命令该怎么办呢?
指令实现
- 放入后台
- 如果程序还没有被执行,可以在他的执行指令后加 &,把该程序放入后台。
$ ./client.sh &
- 如果程序正在运行已经占用终端,可以按住ctrl+z将程序放入后台。
- 查看后台任务
可以利用jobs指令查看后台已经放入后台的任务。
$ jobs -l
- 恢复后台任务
可利用 fg %工作号 将程序从后台恢复到前台; bg %工作号将程序恢复到后台。此处的工作号(上图中框选的部分)并非PID号,注意区别。
$ fg %1
注意:你放入后台的程序是与终端绑定的,只有你结束了这个终端,在这个终端下放入后台的程序也会同时结束
让程序脱离终端
- 放入开机自启动文件中 /etc/rc.local
- 利用nohup命令
$ nohup ./client.sh &
可使用ps查询该进程,kill杀死进程
摘录于慕课网Linux系统管理课程:https://www.imooc.com/video/10973/