商城首页欢迎来到中国正版软件门户

您的位置:首页 >如何使用nohup命令在后台运行Python脚本

如何使用nohup命令在后台运行Python脚本

  发布于2026-05-02 阅读(0)

扫一扫,手机访问

如何使用nohup命令在后台运行Python脚本

如何使用nohup命令在后台运行Python脚本

有没有遇到过这种情况:你在服务器上启动了一个需要长时间运行的Python脚本,但一关闭终端窗口,程序就跟着中断了?这确实让人头疼。好在,Linux系统里有个非常实用的工具——nohup(no hang-up的缩写)。顾名思义,它能让你启动的程序“不挂断”,即使你退出登录或者关掉终端,任务也会在后台稳稳地继续执行。下面,我们就来一步步看看怎么用好它。

第一步:打开终端并定位脚本

首先,像往常一样打开你的终端(Terminal)。然后,使用cd命令切换到存放你Python脚本的目录。比如,你的脚本放在/home/user/projects这个路径下:

cd /path/to/your/script

第二步:启动脚本并放入后台

定位到目录后,就可以使用nohup命令来运行脚本了。假设你的脚本文件名叫script.py,基础命令格式是这样的:

nohup python script.py &

这里有个关键点:命令末尾的&符号。它的作用就是告诉系统,把这个程序直接放到后台去运行,这样你就能立刻拿回终端的控制权,继续做其他事情。

第三步:管理程序输出

默认情况下,nohup会把程序的所有输出(标准输出)都自动重定向到当前目录下一个名叫nohup.out的文件里。如果你想自定义输出文件的名称和位置,可以这样做:

nohup python script.py > output.log &

这条命令会把输出内容保存到指定的output.log文件里。运行命令后,按一下回车,你的脚本就已经在后台默默工作了,现在你可以放心地关闭终端窗口。

第四步:查看运行日志

脚本跑起来之后,怎么知道它运行得顺不顺利呢?很简单,直接查看输出日志文件就行。对于默认情况,使用cat命令:

cat nohup.out

如果你指定了其他的日志文件(比如上面的output.log),查看时替换成对应的文件名即可。

第五步:高级用法——分离错误日志

一个更清晰的做法是把程序的一般输出和错误信息分开记录。这在调试时特别有用。你可以使用下面这条命令:

nohup python script.py > output.log 2> error.log &

这样一来,正常的打印信息会进入output.log,而任何错误提示(标准错误输出)都会被单独记录到error.log文件中,排查问题一目了然。

第六步:如何停止后台任务

如果任务执行完毕,或者你需要中途停止它,该怎么办?这就需要找到它的“进程ID”(PID)。首先,用ps命令配合grep来查找:

ps aux | grep script.py

在输出的信息中找到对应你脚本的那一行,左边通常会显示一列数字,那就是PID。接着,使用kill命令加上这个PID来终止进程:

kill [PID]

请务必将[PID]替换成你实际查到的数字。执行之后,相应的后台任务就会被结束。

掌握以上这几步,你就能轻松驾驭nohup命令,让那些重要的、耗时的脚本任务在后台可靠地运行,再也不用守着终端了。

本文转载于:https://www.yisu.com/ask/82002436.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注