我尝试在父类被守护的方法中执行脚本。
autogamma.sh 是一个需要安装 ImageMagick(并使用转换)的脚本,可以在这里找到:http ://www.fmwconcepts.com/imagemagick/autogamma/index.php
import os
import subprocess
import daemon
class MyClass():
def __init__(self):
self.myfunc()
def myfunc(self):
script = os.path.join(os.path.dirname(os.path.realpath(__file__)), 'autogamma.sh')
cmd = ('/bin/sh %s -c average /tmp/c.jpg /tmp/d.jpg' % script).split(' ')
ret = subprocess.Popen(cmd).communicate()
with daemon.DaemonContext():
process = MyClass()
process.run()
仅在启动类 MyClass 时正确执行脚本。我认为 env 或类似的东西有问题,但无法得到它。
Rsync、mediainfo、ffprobe 也出现了问题。使用 Python 2.7.3 和 python-daemon 1.6,在 mac os、centos 5.5、ubuntu 12.04TLS 上测试