как запустить приложение с помощью launchd?

Мне нужно ежедневно запускать приложение Mac без какого-либо взаимодействия с пользователем, используя launchd, я создал файл .plist и вставил его в /system/LaunchDaemons, а после этого как выполнить файл plist, может ли кто-нибудь рассказать мне пошаговый рабочий процесс о том, как работать с launchd мне будет полезно, я вставил свой файл .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>RunAtLoad</key>  
            <true/>
            <key>KeepAlive</key>
            <true/>
            <key>Label</key>
            <string>myapp.restart</string>
            <key>ProgramArguments</key>
            <array>
                    <string>/Applications/myapp.app</string>
            </array>
            <key>StartCalendarInterval</key>
            <dict>
                <key>Hour</key>
                <integer>16</integer>
                <key>Minute</key>
                <integer>40</integer>
           </dict>
    </dict>
    </plist>

person vivek    schedule 20.01.2015    source источник
comment
Вы, вероятно, не сможете этого сделать. Даже если приложение не требует взаимодействия с пользователем, его, вероятно, необходимо запускать в контексте сеанса входа в систему, а демоны запуска не запускаются таким образом.   -  person Gordon Davisson    schedule 20.01.2015


Ответы (1)


Вам, вероятно, понадобится такое имя вашей программы, а не ProgramArguments:

<key>Program</key>
<string>/Applications/myapp.app/Contents/MacOS/myapp</string>
person Mark Setchell    schedule 20.01.2015
comment
спасибо, сэр, и у меня есть одно сомнение, я создал файл .plist с помощью текстового редактора и сохранил его с расширением .plist. Я делаю это правильно или мне нужно использовать какой-то другой инструмент для создания файла .plist? - person vivek; 20.01.2015
comment
Вы можете использовать любой редактор, если он не вставляет RTF или другие символы форматирования, отличные от ASCII. Если вы используете Textedit на Mac, нажимайте Shift-Cmd-T, пока в строке заголовка не появится xyz.TXT, а не xyz.RTF. - person Mark Setchell; 20.01.2015
comment
это не помогло мне решить мою проблему, но сегодня я нашел решение и все равно успешно запустил его, спасибо за вашу приверженность - person vivek; 25.01.2015