2024-09-27 22:30:39 发布
网友
我想添加一个运行Python文件的LaunchDaemon。有没有一个简单的方法可以做到这一点?在
显式启动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>
chmod +x /path/to/your/script.py
#!/usr/bin/python
然后直接运行脚本
我应该说RunAtLoad = true不是推荐的开始工作的方式。真的只有在没有其他办法的情况下才这么做。如果您想手动运行它,只需删除它并执行launchctl start tld.yourdomain.YourService。加载服务launchctl load /path/to/the/plist.plist或将其插入/Library/LaunchAgents、/Library/LaunchDaemons或{}。在
RunAtLoad = true
launchctl start tld.yourdomain.YourService
launchctl load /path/to/the/plist.plist
/Library/LaunchAgents
/Library/LaunchDaemons
并且:UserName = root只有当它是一个启动守护程序时才可能。如果您不需要它,那么也将其删除并使其成为启动代理(每个用户一个实例,而不是整个系统的一个实例)。在
UserName = root
选项1
显式启动python解释器:
方案2
chmod +x /path/to/your/script.py
)#!/usr/bin/python
或{然后直接运行脚本
^{pr2}$我应该说}。在
RunAtLoad = true
不是推荐的开始工作的方式。真的只有在没有其他办法的情况下才这么做。如果您想手动运行它,只需删除它并执行launchctl start tld.yourdomain.YourService
。加载服务launchctl load /path/to/the/plist.plist
或将其插入/Library/LaunchAgents
、/Library/LaunchDaemons
或{并且:
UserName = root
只有当它是一个启动守护程序时才可能。如果您不需要它,那么也将其删除并使其成为启动代理(每个用户一个实例,而不是整个系统的一个实例)。在相关问题 更多 >
编程相关推荐