2013-04-19 6 views
5

मैं हर पल का उपयोग कर launchd के बारे में एक स्क्रिप्ट निष्पादित करने के लिए कोशिश कर रहा हूँlaunchd स्क्रिप्ट चलाने लेकिन उत्पादन मिल रहा है (कोड के साथ बाहर निकला गया: 2)

मैं एक नया 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>Label</key> 
    <string>com.bpstatusboard.omnifocus</string> 
    <key>ProgramArguments</key> 
    <array> 
     <string>/Users/me/script.sh</string> 
    </array> 
    <key>StartInterval</key> 
    <integer>50</integer> 
</dict> 
</plist> 
की तरह दिखता है जोड़ा

नौकरी दिए गए समय अंतराल के साथ निष्पादित की जाती है और निम्न लॉग उत्पन्न करती है।

Apr 19 15:27:58 MacBook com.apple.launchd.peruser.501[153] (com.bpstatusboard.omnifocus[89895]): Exited with code: 2 

समस्या: स्क्रिप्ट को एक फ़ाइल अद्यतन करना चाहिए लेकिन ऐसा नहीं है। यह मैन्युअल रूप से टर्मिनल में लॉन्च होने पर यह सही ढंग से काम कर रहा है। मुझे बाहर निकलने पर अधिक जानकारी नहीं मिली कोड: 2। कोई विचार क्या स्क्रिप्ट को सही तरीके से निष्पादित करने के लिए रोकता है?

+0

लिपि में क्या है इसके बारे में कुछ भी जानने के बिना कहना मुश्किल है; [इस पिछले उत्तर] देखें (http://stackoverflow.com/questions/15990512/launchctl-minimal-working-example-with-python/15991343#15991343) कुछ समस्या निवारण विकल्पों के लिए। –

उत्तर

2

कोड के साथ बाहर निकला गया: 2

2 ENOENT ऐसा कोई फ़ाइल या निर्देशिका। निर्दिष्ट पथनाम का एक घटक मौजूद नहीं था, या पथनाम एक खाली स्ट्रिंग था।

आपकी स्क्रिप्ट /Users/me/script.sh पर मौजूद नहीं है।

+1

असल में यह गलत है। लिपि पाई गई और निष्पादित की गई। स्क्रिप्ट में कुछ कमांड कोड 2 लौटा दिया। लॉन्च नहीं किया गया था स्क्रिप्ट को इस तरह शिकायत की होगी: जॉब अजीब कारण के लिए निष्पादित करने में विफल रहा (3): 2 – LCC

संबंधित मुद्दे