Пытаясь запустить блок Self Control в качестве демона launchd, получите «Ошибка 78» в Launch Control

436
crass_sandwich

Я использую Self Control, чтобы блокировать отвлекающие факторы, и пытаюсь ежедневно запускать его, используя launchdутилиту OSX с графическим интерфейсом Launch Control. Это вызывает скрипт, который вычисляет количество времени, которое нужно заблокировать, затем запускает 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интерпретировать вещи?

0

1 ответ на вопрос

1
soma-zone

Проблема в том, что ваш скрипт не является исполняемым. Я только что выпустил новую версию LaunchControl, которая предоставляет лучшее описание проблемы и кнопку QuickFix, чтобы решить эту проблему.

Предположения не дают хороших ответов. Это должен был быть комментарий. DavidPostill 7 лет назад 0
Это действительно комментарий, а не ** ответ ** на оригинальный вопрос. Чтобы критиковать или запрашивать разъяснения у автора, оставьте комментарий под его сообщением - вы всегда можете прокомментировать свои собственные сообщения, и как только у вас будет достаточно [репутации] (https://superuser.com/help/whats-reputation), вы будете иметь возможность [комментировать любой пост] (https://superuser.com/help/privileges/comment). Пожалуйста, прочитайте [Зачем мне нужно 50 репутации, чтобы комментировать? Что я могу сделать вместо этого?] (Https://meta.stackexchange.com/a/214174) DavidPostill 7 лет назад 0
Сценарий не исполняемый * является * проблемой. Я перефразировал мой ответ соответственно. soma-zone 7 лет назад 0