在 Linux (ubuntu)中,可以使用 nohup
命令以守护进程的方式,在后台运行 Python 脚本。
nohup
命令可以在终端关闭后继续执行脚本,并将脚本的输出重定向到一个文件中。
下面是一个示例,假设我们有一个 Python 脚本 my_script.py
,我们想要以守护进程的方式在后台运行它:
nohup python my_script.py > my_output.log 2>&1 &
这个命令中,nohup
命令表示忽略挂起信号,保证即使终端关闭或者退出,脚本也会继续执行。python my_script.py
表示运行 Python 脚本。> my_output.log
表示将脚本的标准输出重定向到文件 my_output.log
中。2>&1
表示将标准错误输出也重定向到标准输出,即一起重定向到 my_output.log
文件中。&
符号表示在后台运行命令。
执行完上述命令后,脚本就会在后台运行,并将输出写入 my_output.log
文件中。如果需要停止守护进程,可以使用 kill 命令将进程终止:
kill <pid>
其中 <pid>
是进程的 ID,可以使用 ps
命令查看该脚本进程的 ID:
ps aux | grep my_script.py
这个命令将列出所有包含字符串 my_script.py
的进程,其中第一列是进程 ID。