服务器后台运行程序的方法
2024/3/20
1.后台运行代码命令
要使Python程序在后台运行,可以使用nohup
命令和&
符号。这样可以在退出终端或者关闭SSH会话后,程序仍然在后台运行。
nohup python your_script.py &
your_script.py
是你要在后台运行的Python脚本。nohup
命令的作用是即使终端关闭,程序也不会停止运行。&
符号将程序放到后台执行。
若要将输出重定向到文件,可以这样做:
nohup python your_script.py > output.log 2>&1 &
这里,> output.log
将标准输出重定向到output.log
文件。2>&1
确保标准错误也被重定向到标准输出(即output.log
文件)。
使用上述指令后,会在终端显示以下信息:
#生成后台任务[jobnum] PID
[1] 25282
记住后面的25282
的PID,若想kill
程序需要用到。
2.查看后台命令
jobs
指令查看当前终端后台执行的任务
ps
查看瞬时进程的动态,可以看到别的终端的任务
3.结束后台任务
通过执行jobs
命令查看后台运行的程序,此时只有序号没有PID号;
输入命令jobs -l
可以查看到程序的PID号,然后使用kill -9 PID
杀死进程
输入jobs
查看进程是否被杀死。
如果退出过客户端界面,输入 jobs
命令查不到正在运行的程序;
输入 ps ux
来查看所有程序的进程号PID,然后再通过 kill -9 PID
杀死程序;
输入 ps ux
来查看程序是否被杀死。