服务器后台运行程序(nohup/screen/tmux)

本文介绍了如何使用nohup命令、screen命令和tmux命令让Linux程序后台持久运行,避免因网络问题导致的中断。通过实例演示了如何设置输出重定向和窗口管理,是开发者必备的运维技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


前言

当我们在Linux服务器直接运行程序,程序运行的时间较长时,程序经常会因为网络连接问题异常终止,这样我们运行的程序经常会半途而废。如果一直盯着程序运行又费时费力,所以,让程序自己在后台运行,就完美的解决了这个问题。下面介绍三个方法:


一、nohup命令

运行:
nohup python -u xxx.py >xxx.log 2>&1 &
运行成功会输出一个PID号
如果想关闭运行程序就可以:
kill -9 PID

详解:
nohup指不断地运行,是no hang up的缩写,指不间断,不挂断。运行一个进程的时候,不想让其在你退出账号时关闭,即可用nohup。
python 是运行python文件
-u:python的输出又缓冲,导致xxx.log并不能够马上看到输出。-u参数,使得python不启用缓冲。可以即时看到输出
xxx.log保存输出的信息,运行程序时会生成这个xxx文件,里面保存这输出的信息。
2>&1 将错误信息重定向到标准输出
& 最后一个&符号代表后台运行

二、screen命令

常用screen命令:
screen -S name # 创建一个窗口
screen -ls # 查看当前已经创建的窗口
screen -d -r name # 回到名字为name的窗口
screen -X -S name quit # 关闭名字为name的窗口

三、tmux命令

tmux的话看这篇文章链接

四、总结

用以上三种方法,让程序在后台运行,本地连接中断不会影响正在运行的程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值