Я использую самоконтроль , чтобы блокировать отвлекающие, и я пытаюсь запустить его ежедневно с помощью утилиты OSX launchd
программ с графическим интерфейсом управления Launch. Это вызывает скрипт, который вычисляет количество времени, которое нужно заблокировать, затем запускает Self Control в течение этого времени:
#!/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
Вот экран, который я вижу, когда пытаюсь загрузить / запустить демон в Launch Control.
При наведении курсора на "Ошибка 78" на этом экране он говорит о кодах выхода, поэтому я полагаю, что это связано с "выходом 0" в моем сценарии. Тем не менее, я как бы нуб, так что я не знаю, как еще я мог остановить сценарий. Есть ли другой способ, или проблема в том, как launchd
интерпретирует вещи?