你好电脑同胞:)
我有一个 shell 脚本,我将用作看门狗计时器。它检查我的其他“主”程序是否正在运行。如果不是,它将重新启动它。
问题是:如何在 Mac 上安装它?操作系统会自动并定期调用脚本的某个地方是否存在文件夹/plist 文件场景,以确保我的程序在不运行的情况下永远不会运行那么长时间?理想情况下,我希望每分钟测试一次,但每小时甚至每天几次都令人满意。
谢谢!
在 Mac OS X 上执行此操作的方法是使用启动服务。它取代了旧的系统服务,例如init
andcrontab
并提供了一个单一的、统一的框架来管理系统服务。
在您的情况下,您可能不需要单独的脚本 - 保持应用程序实例运行应该由系统处理。首先,您需要创建.plist
描述您的守护进程/脚本/应用程序的文件。您可以将其放置在以下位置之一,具体取决于服务类型:
~/Library/LaunchAgents
:用户提供的每用户代理。/Library/LaunchAgents
:管理员提供的每用户代理。/Library/LaunchDaemons
:管理员提供的系统范围的守护进程。/System/Library/LaunchAgents
: Mac OS X 每用户代理。/System/Library/LaunchDaemons
: Mac OS X 系统范围的守护进程。一旦定义了服务,就可以使用launchctl
命令来控制launchd
. 例如,您可以列出正在运行的服务、启动/停止服务等。
完整的文档在这里:
我不是 Mac 用户,但应该有cron
守护进程。http://hints.macworld.com/article.php?story=2001020700163714