Есть ли способ проверить наличие ошибок в файле `.plist`?

Извиняюсь, я уверен, что этот вопрос уже задавался раньше, я посмотрел ответы на все вопросы и не могу понять, почему launchctl говорит это .plist является недействительным.

Я пытаюсь запускать скрипт на python один раз в день в 8 утра, первый аргумент программы - это путь к двоичному файлу 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>

1 ответ

Решение

Да, вы можете использовать plutil Команда для проверки синтаксиса файлов списка свойств.

В твоем случае:

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

Это означает, что ваш Key тег должен быть строчным, поэтому key,

Другие вопросы по тегам