在Windows中,可以创建可以作为服务安装的应用程序。此类应用程序称为Windows服务。什么相当于Mac OS X上的服务?它们是如何实施的以及从何处开始了解它?
我想创建一个服务来自动执行任务,并根据需要启动和停止它。
答案 0 :(得分:10)
您需要成为launchd
的朋友。您需要创建放置在以下五个位置之一的launchd
个配置文件:
~/Library/LaunchAgents
:用户提供的每用户代理。
/Library/LaunchAgents
:管理员提供的每用户代理。
/Library/LaunchDaemons
:由系统提供的守护程序
管理员。
/System/Library/LaunchAgents
:Mac OS X提供的每用户代理。
/System/Library/LaunchDaemons
:Mac OS提供的系统范围守护程序
X
守护程序 是一种系统范围的服务,其中所有客户端都有一个实例。 代理 是一种基于每个用户运行的服务。
Configuration files采用property list.
的形式语法很简单,但很容易弄错。如果Wikipedia article不符合您的喜好,则man page会对选项进行总结。
基本上,您所做的是在某处安装实际的命令行工具(您的服务),然后创建launchd
配置plist并将其放在上述位置之一。您可以配置plist,以便launchd
在启动时或定期运行您的服务,或者响应各种操作(例如更改文件夹的内容)。
有一篇很深入的文章here。
答案 1 :(得分:4)
你应该看看 launchd ,你可以用它做很多漂亮的东西。 例如,steam告诉launchd每当删除steam时,运行steam_delete helper工具。这个帮助工具可以帮助您从系统中完全卸载蒸汽。
其他包括OS X上谷歌浏览器的自动更新机制。
帮助您入门的链接:Devdaily launchd examples