Я пытаюсь автоматически запустить SickBeard при входе
python /Applications/Sick-Beard/Sickbeard.py
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd >
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.sickbeard.sickbeard</string>
<key>ProgramArguments</key>
<array>
<string>/usr/bin/python</string>
<string>/Applications/Sick-Beard/SickBeard.py</string>
<string>-q</string>
<string>-d</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Когда я бегу, launchctl com.sickbeard.sickbeard.plist
это дает мне сообщение:
launchctl load com.sickbeard.sickbeard.plist launchctl: plist не был возвращен для: com.sickbeard.sickbeard.plist launchctl: plist не был возвращен для: com.sickbeard.sickbeard.plist ничего не найдено для загрузки
Ответы:
Я предполагаю, что пути к скрипту Python и его параметры действительны, в противном случае вы, скорее всего, увидите ошибки в консоли.
В последний раз я видел эту ошибку, потому что в листе были ложные символы, например, лишние пробелы, вызывающие синтаксические ошибки и, следовательно, невозможность загрузки. Если вы запустите
plutil -lint
свой plist, это проверит синтаксис для вас, а также легко сообщит строку, в которой произошла ошибка.plutil -lint com.sickbeard.sickbeard.plist
Если это не поможет, то (OSX) Как запустить SickBeard при входе в систему или загрузиться в потоке OSX на форумах sickbeard, немного отличается от вашего (с помощью sickbeard,
/usr/local
а не с/Applications
- так что это может быть проблема с разрешениями) и также некоторые люди с, казалось бы, той же проблемой, что и выисточник
plutil -lint
раньше. Очень удобно!Как я обнаружил, сложный путь, вы должны выполнить команду, используя,
sudo
а также передавая полный путь к.plist
файлу следующим образом (в вашем случае):Путь может быть другим для вас, но вы должны найти файл, чтобы узнать его местоположение и передать его, как я цитировал
launchctl
команду.источник
Сообщение
nothing found to load
иногда означает, что конфиг переопределяется другим конфигом. Вы форсируете загрузку, используя опцию "-w" при использованииlaunchctl load or unload
.Если вам нужно принудительно загрузить или выгрузить файл plist, это означает, что у вас есть конфигурация, которая переопределяет plist. Это переопределение создается, когда вы используете "-w", иначе переопределение не будет добавлено в файл переопределений. Чтобы предотвратить это, отредактируйте файл ниже, найдите ярлык задания, для которого вы хотите удалить переопределение, удалите необходимые строки:
Например, удалите эту строку
тогда вы можете использовать:
launchctl load or unload /Library/LaunchDaemons/com.mydomain.myjob.plist
без необходимости "-w" или "-F", вы не должны иметь сообщениеnothing found to load
источник
Возможно, вы захотите добавить флаг -F, чтобы принудительно
launchctl
загрузить .plist. Также убедитесь, что .plist находится вlaunchctl
поиске путей . Если ваш .plist находится где-то еще, вы также можете добавить флаг -D и указать домен. Из справочной страницы:Удостоверьтесь, что вы тщательно изучили всю информацию, содержащуюся на странице руководства - вы действительно можете испортить ситуацию, если ваш вызов не настроен должным образом.
источник