任何熟悉launchd
Mac OS X 的人,特别是文件部分的NetworkState
( bool
) 键?KeepAlive
.plist
从man
页面中,launchd
当 Mac 上没有网络连接时,当 plist 配置如下时,应该调用可执行文件:
...
<key>KeepAlive</key>
<dict>
<key>NetworkState</key>
<false/>
</dict>
...
这似乎可以正常工作,但是,一旦建立了有效的网络连接(定义为 Mac 具有至少一个非环回 IPv4/6 地址),launchd
应该停止调用可执行文件(因为NetworkState
标志应该阻止它)。
但是,我看到的行为是,无论Mac 的网络连接如何,都会launchd
继续调用我的程序!就好像完全无视国旗一样。launchd
NetworkState
有谁知道如何进行这项工作,以便launchd
仅在没有网络连接时调用程序,并在建立网络连接后停止调用它?