【发布时间】:2013-04-13 17:06:16
【问题描述】:
我想使用launchd 每分钟运行一个python 脚本。我的 plist 文件如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.turtle.script.plist</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/python</string>
<string>/Users/turtle/Desktop/turtle.py</string>
<string>/Users/turtle/Desktop/data/data.txt</string>
</array>
<key>StartInterval</key>
<integer>60</integer>
</dict>
</plist>
这个 plist 文件看起来不错,因为我得到以下信息:
plutil -lint com.turtle.script.plist
com.turtle.script.plist: OK
当我从命令行运行该脚本时它可以工作:
/usr/bin/python /Users/turtle/Desktop/turtle.py /Users/turtle/Desktop/data/data.txt
我通过以下方式加载此 plist:
launchctl load -w -F com.turtle.script.plist
我也试过了:
sudo launchctl load -w -F com.turtle.script.plist
我加载了这个作业,python 脚本应该将一个文件写入磁盘。然而,从来没有产生过文件。我检查了这份工作:
sudo launchctl list | grep com.turtle.script.plist
输出是:
- 1 com.turtle.script.plist
谁能帮忙解决问题?
【问题讨论】:
-
有什么问题?你从来没有真正说过。
-
更新了问题。问题是代码永远不会执行它的预期目标——将文件写入磁盘。