2

[ネットワーク] ロケーションの変更を処理するために /Library/Preferences/SystemConfiguration を監視したくありません。その結果、変更ごとにスクリプトが 2 回続けて実行されます。

/Library/Preferences/SystemConfiguration/com.apple.airport.preferences.plist を監視すると、Wi-Fi ではうまく機能しますが、たとえば、Wi-Fi を使用していて、Thunderbolt イーサネットを接続している場合はキャッチされません。

有線接続を監視できる plist はありますか? それとも、5 秒ごとにポーリングし、有線イーサネットがアクティブな状態に変化したときに ~/Library 内のファイルにアクセスする 2 つ目の LaunchAgent を追加するのに行き詰まっていますか?

4

2 に答える 2

3

このバリエーションは機能します

<key>LaunchEvents</key>
<dict>
    <key>com.apple.notifyd.matching</key>
    <dict>
        <key>com.apple.system.config.network_change</key>
        <dict>
            <key>Notification</key>
            <string>com.apple.system.config.network_change</string>
        </dict>
    </dict>
</dict>    

しかし、それは多くの通知を生成します...正しい構文を発見するためにデーモンの山を検索する必要がありました:)お楽しみください

于 2012-09-14T15:15:52.657 に答える
0

理論的には、起動したplistで通知にサインアップできるはずです。私は実際にそれを機能させることはありませんでしたが、私もそれほど一生懸命に努力しませんでした。これは私がうまくいくと言われたことです:

<key>LaunchEvents</key>
<dict>
    <key>com.apple.distnoted.matching</key>
    <dict>
        <key>com.apple.system.config.network_change</key>
        <dict>
            <key>Name</key>
            <string>com.apple.system.config.network_change</string>
        </dict>
    </dict>
</dict>        
于 2012-09-13T01:56:54.157 に答える