Shell Script не запускается автоматически, хотя он зарегистрирован в элементах входа Mac OS X - PullRequest
4 голосов
/ 03 декабря 2008

У меня есть следующий сценарий оболочки, зарегистрированный в моих настройках «Элементы входа», но он, похоже, не оказывает никакого влияния. Он предназначен для запуска вики moinmoin, но работает только тогда, когда он запускается вручную из окна терминала, после чего он работает до следующего выключения машины.

#!/bin/bash
cd /Users/stuartcw/Documents/Wiki/moin-1.7.2
/usr/bin/python wikiserver.py >> logs/`date +"%d%b%Y"`.log 2>&1 &

Мне бы очень хотелось, чтобы вики был доступен после перезапуска, поэтому любая помощь в понимании этого будет принята.

Ответы [ 4 ]

4 голосов
/ 03 декабря 2008

launchd - одна из лучших частей MacOS X, и мне очень больно, что я не могу найти ее в других системах.

Отредактируйте и поместите в /Library/LaunchDaemons как com.you.wiki.plist

<?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.you.wiki</string>
    <key>LowPriorityIO</key>
    <true/>
    <key>KeepAlive</key>
    <true/>
    <key>RunAtLoad</key>
    <true/>
    <key>Nice</key>
    <integer>1</integer>
    <key>WorkingDirectory</key>
    <string>/Users/stuartcw/Documents/Wiki/moin-1.7.2</string> 
    <key>UserName</key>
    <string>user to run this as</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/python</string>
        <string>wikiserver.py</string>
    </array>
</dict>
</plist>
4 голосов
/ 03 декабря 2008

Попробуйте использовать launchd. Больше информации на http://www.macgeekery.com/tips/all_about_launchd_items_and_how_to_make_one_yourself

3 голосов
/ 03 декабря 2008

Некоторые полезные ссылки:

Mac OS X: создание хука входа в систему

Запуск сценариев оболочки при входе в систему или запуске системы

См. Также Lingon для интерфейса, если вы решите использовать вместо него Launchd.

1 голос
/ 03 декабря 2008

Я не знаю много об этом, так как я не использую элементы входа. Просто предложение, может быть, попробуйте яблочный скрипт, который вызывает эти команды оболочки, и поместите его в Элементы входа.

...