背景:
小编在实验室里学习深度学习,需要经常ssh到服务器上训练神经网络,可是自己的主机有可能会关机或者拿去做别的事情,这就很不方便。还有就是有时需要同时开启多个窗口,小编是win10利用putty来连接服务器的,就需要多个putty,感觉好蠢。经过研究,发现了几个好用的命令来解决这个问题。
问题一:离线工作
方法一:利用nohup命令
直接运行 nohup XXXX &
例如:
nohup python train.py &
这样就会把原来在控制台的输出重定向到nohuo.out文件中,即使退出服务器也是没有关系的,你的网络依旧在训练
如何关闭的离线的工作那
首先查看当前的进程(用ps命令): ~$ ps
然后用kill命令杀死进程就可以了: ~$ kill pid
方法二:使用screen分屏管理器
准备:需要用pip,yum等工具下载screen
例如:
~$ pip install screen
首先创建一个窗口,名字叫yolo(自己随便取的):
~$ screen -S yolo
~$ python train.py
退出并保存这个窗口:
用 Ctrl + a +d 的快捷键
可以查看当前有哪些窗口:
~$ screen -ls
然后可以关闭连接(程序依然在跑),或者重新进入:
~$ screen -r yolo
如何关闭那个叫yolo的窗口那,用下面的命令:
~$ screen -X -S yolo quit #其中yolo是关闭窗口的名字
问题二:多窗口作业
还是使用强大的screen了
首先还是要先创建一个窗口了
~$ screen -S mywindow
然后可以用以下的命令来进行操作了,就不一一演示了,感兴趣的小伙伴可以自己动手试一下
Ctrl + a c 创建一个窗口
Ctrl + a w 窗口列表
Ctrl + a n 下一个窗口
Ctrl + a p 上一个窗口
Ctrl + a 0~9 在第0个窗口和第9个窗口之间切换
exit 关闭当前窗口并且切换到下一个窗口(当退出到最后一个窗口时,该终端自动终止,并且退回到原始shell状态)
Ctrl + a d 退回当前终端,返回加载前的shell命令状态