मैं विचलित करने के लिए स्व नियंत्रण का उपयोग कर रहा हूं , और मैं इसे launchd
लॉन्च कंट्रोल जीयूआई के साथ ओएसएक्स उपयोगिता का उपयोग करके दैनिक चलाने की कोशिश कर रहा हूं । यह उस स्क्रिप्ट को कॉल करता है जो उस समय की मात्रा को ब्लॉक करने के लिए समय की मात्रा का पता लगाता है:
#!/bin/sh
#start Self Control block from Terminal
#see https://github.com/SelfControlApp/selfcontrol/wiki/Running-SelfControl-from-the-Terminal
#calculate block length in minutes
minutes_to_block=`python timetoblock.py`
#timetoblock prints "-1" if the time is between 5 and 10 pm
if [[ $minutes_to_block -le 0 ]]; then echo "done"; exit 0; fi
#tell Self Control what the block length is (by modifying its defaults)
defaults write org.eyebeam.SelfControl BlockDuration $minutes_to_block
#start block
sudo /Applications/SelfControl.app/Contents/MacOS/org.eyebeam.SelfControl $(id -u $(whoami)) --install
यहां स्क्रीन मैं देख रहा हूं जब मैं लॉन्च कंट्रोल में डेमन को लोड / स्टार्ट करने का प्रयास करता हूं।
जब मैं उस स्क्रीन पर "त्रुटि 78" पर होवर करता हूं, तो यह निकास कोड के बारे में बात करता है, इसलिए मुझे लगता है कि इसे मेरी स्क्रिप्ट में "निकास 0" के साथ करना होगा। हालाँकि, मैं एक बैश नोब की तरह हूं, इसलिए मुझे नहीं पता कि मैं स्क्रिप्ट को कैसे रोक सकता हूं। क्या कोई और तरीका है, या यह मुद्दा है कि launchd
चीजों की व्याख्या कैसे की जाती है?