4

我一直无法弄清楚为什么launchctl说这.plist是无效的。

我正在尝试每天早上 8 点运行一次 Python 脚本。第一个程序参数是 pyenv virtualenv 二进制文件的路径,第二个是我的 Python 脚本。

有没有一种方法可以验证我在这个.plist文件中的正确或错误?launchctl它返回的错误并不明显,它只是:

无效的属性列表。

我知道有一些工具可以创建和管理这些工作,但我想更好地了解幕后发生的事情。

这是我的.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.conall.autowallpaper</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/conall/.pyenv/versions/3.6.2/envs/auto_wallpaper-3.6.2/bin/python</string>
        <string>/Users/conall/python/projects/auto_wallpaper/auto_wallpaper.py</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>
        <Key>Minute</Key>
        <integer>0</integer>
        <key>Hour</key>
        <integer>8</integer>
    </dict>
</dict>
</plist>
4

1 回答 1

16

是的,您可以使用该plutil命令检查属性列表文件的语法。

在你的情况下:

$ plutil test.plist 
test.plist: Encountered unknown tag Key on line 14

这意味着您的Key标签应该是小写的,所以应该是key.

于 2018-01-11T22:14:56.560 回答