如何在.plist中运行Python命令?

2024-09-27 22:30:39 发布

您现在位置:Python中文网/ 问答频道 /正文

我想添加一个运行Python文件的LaunchDaemon。有没有一个简单的方法可以做到这一点?在


Tags: 文件方法launchdaemon
1条回答
网友
1楼 · 发布于 2024-09-27 22:30:39

选项1

显式启动python解释器:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>RunAtLoad</key>
    <true/>
    <key>Label</key>
    <string>tld.yourdomain.YourService</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/bin/python</string>
        <string>/path/to/your/script.py</script>
    </array>
    <key>UserName</key>
    <string>root</string>
</dict>
</plist>

方案2

  • 使您的python脚本可执行(chmod +x /path/to/your/script.py
  • 在第一行放一个she-bang(#!/usr/bin/python或{})

然后直接运行脚本

^{pr2}$

我应该说RunAtLoad = true不是推荐的开始工作的方式。真的只有在没有其他办法的情况下才这么做。如果您想手动运行它,只需删除它并执行launchctl start tld.yourdomain.YourService。加载服务launchctl load /path/to/the/plist.plist或将其插入/Library/LaunchAgents/Library/LaunchDaemons或{}。在

并且:UserName = root只有当它是一个启动守护程序时才可能。如果您不需要它,那么也将其删除并使其成为启动代理(每个用户一个实例,而不是整个系统的一个实例)。在

相关问题 更多 >

    热门问题