检查 Python 脚本是 运行
Check a Python Script Is Running
我有一个名为 update.py 的 python 脚本,我想使用另一个 python 脚本来检查该脚本是否为 运行ning。如果 update.py 没有 运行 或错误,则脚本将 运行 update.py.
我可以吗?如果有例子就太感谢了
脚本通常用于此类任务。您有一个跟踪 update.py 的监控脚本,它在后台保持 运行。如果监控脚本在开始时启动 python 脚本会变得更容易。
#!/bin/bash
# Monitor script.
EXEC=<path>/update.py
while true; do
"$EXEC" &
wait # Here the assumption is that you want to run this forever.
done
不确定你在问什么,但考虑到这可能有帮助,所以如果你只想从另一个调用一个 python 脚本,那么你可以使用脚本 1
#!/usr/bin/python
from subprocess import call
call(["python", "update.py"])
将此文件保存在名为 script1 的脚本中,运行 它会编译 update.py。
如果你想检查 update.py 中的任何语法错误,那么你可以使用脚本 2
#!/usr/bin/python
from subprocess import call
call(["python","-m","py_compile", "update.py"])
如果 script2 编译没有任何错误,则说明您的程序没有语法错误。
第三,如果你想检查 update.py 当前是否为 运行ning,你可以使用脚本 3
#!/usr/bin/python
import psutil
import sys
from subprocess import Popen
for process in psutil.process_iter():
if process.cmdline() == ['python', 'update.py']:
sys.exit('Process found: exiting.')
print('Process not found: starting it.')
Popen(['python', 'update.py'])
这最后一个脚本会判断您的脚本是否 运行ning,如果不是 运行ning,它将对其进行编译。
我有一个名为 update.py 的 python 脚本,我想使用另一个 python 脚本来检查该脚本是否为 运行ning。如果 update.py 没有 运行 或错误,则脚本将 运行 update.py.
我可以吗?如果有例子就太感谢了
脚本通常用于此类任务。您有一个跟踪 update.py 的监控脚本,它在后台保持 运行。如果监控脚本在开始时启动 python 脚本会变得更容易。
#!/bin/bash
# Monitor script.
EXEC=<path>/update.py
while true; do
"$EXEC" &
wait # Here the assumption is that you want to run this forever.
done
不确定你在问什么,但考虑到这可能有帮助,所以如果你只想从另一个调用一个 python 脚本,那么你可以使用脚本 1
#!/usr/bin/python
from subprocess import call
call(["python", "update.py"])
将此文件保存在名为 script1 的脚本中,运行 它会编译 update.py。 如果你想检查 update.py 中的任何语法错误,那么你可以使用脚本 2
#!/usr/bin/python
from subprocess import call
call(["python","-m","py_compile", "update.py"])
如果 script2 编译没有任何错误,则说明您的程序没有语法错误。
第三,如果你想检查 update.py 当前是否为 运行ning,你可以使用脚本 3
#!/usr/bin/python
import psutil
import sys
from subprocess import Popen
for process in psutil.process_iter():
if process.cmdline() == ['python', 'update.py']:
sys.exit('Process found: exiting.')
print('Process not found: starting it.')
Popen(['python', 'update.py'])
这最后一个脚本会判断您的脚本是否 运行ning,如果不是 运行ning,它将对其进行编译。