मैं OS X (तेंदुआ) के साथ launchctl
/ समय-समय पर लॉन्च शेड्यूल करने में असमर्थ हूं launchd
। मूल रूप से, मैं वेब पर निर्देशों की चरण-दर-चरण सूची खोजने में असमर्थ हूं और सहज दृष्टिकोण काम नहीं करता है।
sync.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>net.madrat.utils.sync</string>
<key>Program</key>
<string>rsync</string>
<key>ProgramArguments</key>
<array>
<string>-ar</string>
<string>/path/to/folder/</string>
<string>/path/to/backup/</string>
</array>
<key>StartInterval</key>
<integer>7200</integer>
</dict>
</plist>
मैंने इस स्क्रिप्ट को पथ के अंदर रखा है ~/Library/LaunchAgents
।
अगला, मैंने स्क्रिप्ट का उपयोग करके पंजीकरण किया है
launchctl load ~/Library/LaunchAgents/sync.plist
अंत में, यह परीक्षण करने के लिए कि यह काम करता है, मैंने काम शुरू किया:
launchctl start net.madrat.utils.sync
- कुछ नहीं हुआ। rsync
टर्मिनल में कमांड को मैन्युअल रूप से निष्पादित करने से अपेक्षित परिणाम मिलता है।
मुझे पूरा यकीन है कि नौकरी सही ढंग से पंजीकृत हो गई थी क्योंकि अगर मैं गैर-मौजूदा नौकरी शुरू करने की कोशिश करता हूं, तो मुझे एक त्रुटि संदेश मिलता है (जो मुझे उपरोक्त आदेश में नहीं मिला था )।
मैंने गलत क्या किया?
launchctl list
किया प्रदर्शन 1, लेकिन केवल तब मैं का उपयोग कर एजेंट मैन्युअल रूप से शुरू कर दियाlaunchctl start
।