【科研利器】Screen命令让程序永不掉线

2022-10-08 15:59:03 浏览数 (2)

大家好哇!不知道大家有没有遇到过这样一个问题,正在服务器上跑code,但是由于突然断网了或者是长时间无操作等原因导致服务器自动退出登录,即账号已经close connect了,那自然程序也就断了,不得不又重新跑一遍。如果你也存在这样的困扰的话,那今天的screen命令将带你走出困境。

在这里我们仅介绍screen的几个简单用法,便于让我们的程序在账户掉线以后也能继续运行。

代码语言:javascript复制
1、screen -S job_name

该命令用于创建一个新的作业,job_name可以根据需要修改。创建完成后会自动进入到该作业中去,大家可以正常地运行命令、执行程序。只是在该作业中执行的程序会一直运行,即使你的个人账户退出登录以后也能继续运行。

代码语言:javascript复制
2、Ctrl A D

在作业中时,按下这三个键,会退出作业,即处于离线状态,回到原来界面中。退出作业并不会使得作业中运行的程序中断,只有把作业杀死或对程序进行Ctrl C才会中断作业。

代码语言:javascript复制
3、screen -r job_name(or job_id)

在退出作业后,如果想重新进入作业中,即处于在线状态,可以通过该命令实现。

代码语言:javascript复制
4、screen -d job_name(or job_id)

通过该命令,可以指定名为job_name的作业离线。

代码语言:javascript复制
5、screen -ls

可以看到当前服务器中有哪些作业。

代码语言:javascript复制
6、screen -x

恢复之前离线的screen作业。

代码语言:javascript复制
7、screen -wipe 

检查目前所有的screen作业,并删除已经无法使用的screen作业。

代码语言:javascript复制
8、kill job_id

删除screen作业。

代码语言:javascript复制
9、kill -9  job_id

强制删除screen作业。

以上就是screen在服务器中的简单使用啦,希望能够帮你摆脱因为ssh连接中断而导致运行程序中断的烦恼!

0 人点赞