1 screen 命令
-
screen
创建新窗口 -
screen -S name
和上面一样,同时取名,方便管理 - 输入你想要的运行的内容
-
ctrl-a d
先按ctrl+a,再按d,dettach,此时你可以关闭连接了,做自己想做的事情去。 -
screen -ls
查看当前有哪些会话,并显示id -
screen -r id
恢复会话~~~~ -
screen -S id -X quit
删除会话
参考链接1:https://www.ibm.com/developerworks/cn/linux/l-cn-screen/
参考链接2:https://blog.csdn.net/wangyezi19930928/article/details/50052947
2 nohup 命令
-
运行命令
nohup jupyter notebook &
组合使用就能够避免终端关闭、服务器断开等情况导致的模型训练终止
nohup python file.py > filelog.txt 2>&1 &
参数解释:
filelog.txt:> 表示把标准输出(STDOUT)重定向到这个文件,这里重定向到了当前目录下的filelog.txt里,若没有此文件会自动生成。若没有特别指定,默认将当前的输出打印在当前目录的nohup.out文件里。
若无2>&1则错误信息不会重定向。
最后的&符号指定让程序后台运行,一定不能省略,否则程序还是运行在前台。
通过 jobs 命令可以看到后台任务的运行状况(running、stopped等),通过 bg [任务号] 可以让后台stopped的命令继续running,通过 fg [任务号] 可以让后台的任务来前台执行。对于前台已经执行起来的任务,可以 ctrl+z 来丢进后台(丢后台时stop了的话用bg让其run起来)。
-
搜索相关进程,后面grep -v 是忽略grep自身进程。
ps -ux | grep jupyter-notebook | grep -v grep
-
结束进程
kill -9 pid
4、关闭当前后台运行的命令
kill命令:结束进程
(1)通过jobs命令查看jobnum,然后执行 kill %jobnum
(2)通过ps命令查看进程号PID,然后执行 kill %PID
如果是前台进程的话,直接执行 Ctrl+c 就可以终止了
5、前后台进程的切换与控制
(1)fg命令
功能:将后台中的命令调至前台继续运行
如果后台中有多个命令,可以先用jobs查看jobnun,然后用 fg %jobnum 将选中的命令调出。
(2)Ctrl + z 命令
功能:将一个正在前台执行的命令放到后台,并且处于暂停状态
(3)bg命令
功能:将一个在后台暂停的命令,变成在后台继续执行
如果后台中有多个命令,可以先用jobs查看jobnum,然后用 bg %jobnum 将选中的命令调出继续执行。
参考链接: