4

Как продолжение моего первоначального вопроса ...

Регулярно резервное копирование файла журнала в OSX?

Я пытаюсь сделать резервную копию файла журнала на компьютере OSX и взломанном iPhone. LaunchD был рекомендован в качестве решения, и некоторые поиски в Google позже показали, что LingOn - это инструмент для использования.

Вывод (после заполнения полей) дает мне этот 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.ash.MySuperLaunchd</string>
    <key>ProgramArguments</key>
    <array>
        <string>python</string>
        <string>/Users/ash/Desktop/sendemail.py</string>
    </array>
    <key>StartInterval</key>
    <integer>3600</integer>
</dict>
</plist>

Теперь, запустив мой скрипт на Python, вызвав его в терминале, я успешно отправлю письмо на мой почтовый ящик с необходимыми вложениями.

LaunchD просто не запускается, хотя я не знаю почему.

1 ответ1

1

Вам нужно загрузить агента. Либо перезапустите, либо launchctl load /path/to/file.plist .

RunAtLoad по умолчанию имеет значение false, поэтому скрипт запускается в первый раз StartInterval через несколько секунд после загрузки, в данном случае 3600.

Путь в ProgramArguments должен указывать на постоянное местоположение скрипта, поэтому он, вероятно, не должен находиться в ~/Desktop/ . Целевой скрипт не обязательно должен быть исполняемым. Но как правильно устранить неполадки @DanielBeck в комментариях, убедитесь, что вы можете, например, использовать python /Users/ash/Desktop/sendemail.py и что строка shebang верна.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .