使用screen会话来运行Python代码(功能全)

Python3.8

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

时间有限,在好不容易跑通了代码的前提下,安心去睡觉,起床一看半夜3点自动断开服务器然后代码停下来了啊啊啊啊啊,师兄告诉了我用screen,这就学了记录一下。  

ssh连接上服务器

1.直接在默认状态下安装screen

sudo apt install screen.

2.创建自己的一个screen会话

screen -S mysession
创建一个名为 “mysession” 的新会话。 “mysession” 可改为指定名称。
运行该代码之后,就进入了mysession会话中

3.运行代码

转到我们需要运行的文件的目录
cd /tmp/pycharm_project_880
activate 自己的环境
conda activate Fiona0329
运行代码
python run.py

4. 断开连接(不影响代码运行)

当需要断开连接时,按下以下快捷键:

按下 Ctrl + A + D,这将使 screen 会话在后台继续运行,并返回到本地终端。

使用ctrl+a+d退出screen,然后再×掉cmd窗口了可以关机出去玩耍啦,代码还会继续在服务器中愉快地跑~

5.查看和恢复会话

5.1)首先,需要恢复会话先要知道之前创建会话的名称,即查看screen会话,输入如下命令,可以查看创建的所有screen回话。所有会话的名称由id和name组成。
screen -ls

Detached意思是当前screen没有被打开,相对的是Attached表示当前screen正处在打开状态。 

5.2)恢复会话,输入以下命令即可。
screen -r 113738.myCode
5.3)删除已经运行结束或出现报错代码的会话文件
在会话中运行
exit

或者

screen -S 113778.myCode -X quit
screen -X -S 113778 quit
screen -S myCode -X quit

6.报错

报错内容:There is no screen to be resumed matching.

会话在窗口打开时,但由于网络不稳定,使得xshell直接与服务器断开连接,重新连接上之后,再使用screen -r 命令恢复该会话就报了这个错误;这个错误是因为之前没有好好关闭会话而是突然断开,说明之前的还没关,而一个会话不能恢复两次。

解决办法

6.1)先将该会话离线
screen -d 113778.myCode
6.2)再恢复。
screen -r 113778.myCode

二编补充一些内容

7. 不小心ctrl+z,stop了程序

通过 Ctrl+Z 停止任务实际上是将其暂停并挂起,而非终止。此时任务仍在后台保持运行状态,可通过以下步骤恢复:

7.1查看挂起的任务 

在终端中输入 jobs 命令,会列出当前所有被暂停的任务。

例如:

[1]+  Stopped                 python main.py

这里的 [1] 是任务编号。

7.2将任务放到后台运行

使用 bg %1 命令(其中 %1 对应任务编号)将暂停的任务恢复到后台继续执行:

bg %1

此时任务会在后台继续运行,但无法直接看到输出。

7.3(选做)恢复 screen 会话

若之前已退出 screen,需重新连接到原会话:

screen -r

如果会话有多个或名称不明确,可先通过 screen -ls 查看所有会话,再选择对应的会话恢复。

7.4将任务调回前台

进入 screen 会话后,使用 fg %1 命令将后台任务调回前台,以便实时查看输出:

fg %1

通过以上步骤,任务会继续运行,输出将实时显示在 screen 会话中。

您可能感兴趣的与本文相关的镜像

Python3.8

Python3.8

Conda
Python

Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本

内容概要:本文围绕可变桨叶四旋翼无机的规范控制与点对点运动模拟展开,重点研究优化推力分配策略在翻转动作中的应用与性能比较。通过Matlab代码实现,构建了四旋翼动力学模型,并设计了多种控制算法以实现精确的姿态调整与轨迹跟踪。研究对比了不同推力分配方案在执行高机动性翻转动作时的稳定性、能耗效率与响应速度,旨在提升无机在复杂飞行任务中的动态性能与控制精度。该仿真研究为无机飞控系统的设计与优化提供了理论依据和技术支持。; 适合群:具备一定自动控制理论基础和Matlab编程能力,从事无机控制、飞行器动力学或机器系统研究的科研员及研究生。; 使用场景及目标:① 实现四旋翼无机在三维空间中的精确点对点运动控制;② 对比分析不同推力分配策略在执行翻转等高难度动作时的控制效果与能耗表现,优化飞行性能;③ 为无机自主飞行、特技飞行及复杂环境下的机动控制提供算法验证平台。; 阅读建议:此资源以Matlab仿真为核心,建议读者结合相关控制理论知识,深入理解代码实现细节,重点关注动力学建模、控制律设计与推力分配模块。在学习过程中,应动手调试参数,复现文中翻转动作的仿真结果,并尝试拓展至其他复杂飞行任务,以加深对无机控制机理的理解。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值