第一种 nohup
详细参考Linux nohup 命令
$ nohup python test.py
这样执行的时候会将代码放在服务器后台执行,你的终端是看不到运行过程的,期间运行的结果(代码运行过程中打印出来的)会在一个生成的nohup.out文件中保存。
第二种 推荐:screen
详细参考Linux screen 命令
可以简单的认为用这个命令你可以为不同的任务开不同的窗口,这个窗口之间是可以切换的,同时,窗口和你的会话连接基本上没有任何区别,这样你可以在开一个连接的时候同时干多件事情,并且在终端看得到运行过程的同时而不会由于断网而导致代码停止运行。其常用命令如下:
创建一个窗口,并且为这个窗口命名yolo
screen -S yolo
进入yolo窗口
$screen -S yolo
快捷键Ctrl+a+d
断开这个窗口的连接而回到连接会话界面。
可以查看已创建的所有窗口,其中22235为进程id,名称为yolo
$screen -S ls
There is a screen on:
22235.yolo (2022年05月11日 21时47分55秒) (Detached)
终止ssd窗口对应任务的运行,同时杀死该窗口
$kill id
$kill 22235 #例,杀死yolo任务
screen可以实现代码在后台运行时的可视化,同时,能在开一个会话连接时创建多个窗口处理不同的任务。用起来很方便。