如何为Mac OS X创建Windows服务?

时间:2011-11-18 22:21:33

标签: macos service

在Windows中,可以创建可以作为服务安装的应用程序。此类应用程序称为Windows服务。什么相当于Mac OS X上的服务?它们是如何实施的以及从何处开始了解它?

我想创建一个服务来自动执行任务,并根据需要启动和停止它。

2 个答案:

答案 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