我创建了一个类似于service命令的launchctl包装脚本「osx-service-cmd」
我创造了一个类似于’服务’命令的包装脚本,以方便使用OS X的launchctl命令。
这个工具可以用于启动、停止、重新启动通过Homebrew等安装的服务。
运动环境
-
- launchctl コマンドが搭載されている Mac OS X
Mac OS X 10.4 (Tiger) 以上
OS X 10.10.4 (Yosemite) で動作確認済み
安装步骤
git clone https://github.com/nobutakaoshiro/osx-service-cmd.git
cd osx-service-cmd
./install.sh
将 service 命令复制到 /usr/local/bin。
如果路径未设置,请参考下面的页面进行路径配置。
- Homebrew コマンドが優先的に実行されるようにデフォルトパスに/usr/local/binを追加する – Qiita
使用方法
展示服务清单
service list
显示 LaunchAgents/LaunchDaemons 的 plist 列表
服务开始
如果存在名为~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist的plist文件
service mongodb start
# => launchctl load /Users/nobutaka/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
# 以下でも可(部分一致)
service homebrew.mxcl.mongodb start
service homebrew.mxcl.mongodb.plist start
停止服务
service mongodb stop
# => launchctl unload /Users/nobutaka/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
重启服务
service mongodb restart
# => launchctl unload /Users/nobutaka/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
# => launchctl load /Users/nobutaka/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
服务自动启动开启
service mongodb enable
# => launchctl load -w /Users/nobutaka/Library/LaunchAgents/homebrew.mxcl.mongodb.plis
关闭服务自动启动
service mongodb disable
# => launchctl unload -w /Users/nobutaka/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
说明
请在以下路径中寻找与第一个参数部分匹配的 plist 文件:~/Library/LaunchAgents, /Library/LaunchAgents, /Library/LaunchDaemons。然后对该 plist 文件执行 launchctl load/unload 操作。若需要 root 权限,请在执行 service 命令之前加上 sudo。
卸载方法
rm /usr/local/bin/service
卸载只需删除脚本即可,非常方便简单。
请注意以下事项
本软件仅适用于OS X环境。其他环境无法运行。