macos lauchctl 工具实现监测进程并且可以自启动


前言

在macos中如何监测一个进程,并且在进程挂了的时候可以重启

一、使用linux的自带的systmd工具

具体是啥可以百度

二、使用步骤

1.创建文件

代码如下(示例):

  1. 在/Library/LaunchAgents/ 或者在/Library/LaunchDaemons/目录下面创建.plist文件
  2. 编辑该.plist 文件
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>com.example.run_sd_webui</string>
    <key>EnvironmentVariables</key>
    <dict>
        <key>GIT_PYTHON_GIT_EXECUTABLE</key>
        <string>/usr/bin/git</string>
        <key>PATH</key>
        <string>/Users/test/miniconda3/bin:$PATH</string>
        <!-- 添加其他环境变量 -->
    </dict>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/test/run_sd_webui.sh</string>
    </array>
    <key>KeepAlive</key>
    <true/>
    <key>RunAtLoad</key>
    <true/>
    <key>WorkingDirectory</key>
    <string>/Users/test</string>
    <key>StandardOutputPath</key>
    <string>/var/log/run_sd_webui.log</string>
    <key>StandardErrorPath</key>
    <string>/var/log/run_sd_webui.log</string>
</dict>
</plist>

2.启动

  1. 更改文件权限
chmod +x com.example.run_sd_webui.plist
  1. 启动运行
sudo launchctl load /Library/LaunchAgents/your_plist_file.plist
sudo launchctl stop com.example.run_sd_webui //停止
sudo launchctl start com.example.run_sd_webui //启动
  1. 查看是否运行
sudo launchctl list | grep com.example.run_sd_webui

总结

linux的自启动何监控进程,并且进程挂了会重新启动类似,见下面链接
linux使用systemd工具实现类似的功能

  • 7
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值