python脚本相关
提示
要使用FinalShell客户端运行Python脚本并在退出后保持其持续运行,可以按照以下步骤操作:
一、运行Python脚本的基础方法
-
连接服务器
打开FinalShell,通过SSH连接到目标服务器,进入终端界面。 -
执行脚本
输入命令运行脚本,例如:python3 your_script.py # 若系统默认Python版本为3.x
或指定Python路径(如环境复杂时):
/usr/bin/python3 your_script.py
二、保持脚本运行的常用方案
方法1:使用 nohup
命令(推荐)
nohup
可让进程忽略挂断信号(SIGHUP),即使SSH断开仍持续运行。
操作步骤:
nohup python3 your_script.py > output.log 2>&1 &
> output.log
:将标准输出重定向到日志文件。2>&1
:将错误输出合并到标准输出。&
:后台运行。
验证是否运行:
ps aux | grep python3 # 查看进程状态
方法2:使用 screen
或 tmux
会话工具
通过会话管理工具创建独立终端环境,退出后脚本仍保留。
操作步骤:
- 安装screen(如未预装):
sudo apt-get install screen # Debian/Ubuntu系统
- 创建新会话:
screen -S python_session
- 运行脚本:
python3 your_script.py
- 按
Ctrl+A
后按D
分离会话(脚本继续运行)。 - 重新连接会话:
screen -r python_session
方法3:结合 &
和 disown
临时后台运行并解除进程与终端的关联:
python3 your_script.py & # 后台运行
disown -h %1 # 解除关联(%1为作业编号)
三、方案对比与建议
方法 | 优点 | 缺点 |
---|---|---|
nohup | 无需额外安装,日志记录方便 | 需手动管理输出文件 |
screen | 可交互式操作,适合调试 | 需学习会话管理命令 |
disown | 快速解除关联 | 无日志记录,依赖作业编号 |
推荐场景:
- 长期运行且需日志:选择 nohup。
- 需要中途查看输出:使用 screen。
四、注意事项
- 权限问题:确保脚本有执行权限(
chmod +x your_script.py
)。 - 环境依赖:若脚本依赖虚拟环境,需先激活环境再运行。
- 资源监控:可通过
top
或htop
查看脚本资源占用。
通过上述方法,即使关闭FinalShell,脚本仍会在服务器后台持续运行。