我有一个由cron运行的python脚本:
" * / 5 * * * * python / home / alex / scripts / checker> / dev / null&&#34 ;;
它有几个目的,其中之一是检查ps列表中的某些程序,如果它们不存在则运行它们。问题是当cron运行脚本时没有正确执行背景文件中的程序,所有这些都在ps列表中看起来像:
/ usr / bin / python / home / alex / exec / runnable
所以它们看起来像python脚本。当我手动启动我的python脚本时,似乎它在背景中执行可执行,但是使用cron没有任何作用。
以下是代码示例:
def exec(file):
file = os.path.abspath(file)
os.system("chmod +x " + file)
cmd = file
#os.system(cmd)
#subprocess.Popen([cmd])
subprocess.call([cmd])
我尝试了不同的方法,但似乎没有什么工作正常。
Some code update:
pids = get_pids(program)
if pids == None:
exec(program)
print 'Restarted'