我的Swift程序会定期更新存储在com.google.Chrome.plist
中的/Library/Preferences
文件。
在初始执行期间,只需重新启动Chrome浏览器即可使策略生效。但是现在我需要重新启动系统以使策略生效。如何在不重新启动Mac的情况下进行更新?
Reload policies
中的chrome://policy
按钮也无法解决问题。 (我想知道它的目的是什么?)
另外,请解释将plist文件放在/Library/Preferences
和/Library/Managed Preferences
中的区别
或者OS X上有任何命令,例如gpupdate /force
(对于Windows)as they said here。
我最近还发现该问题也存在于其他应用程序中(我尝试从~/Library/Preferences/com.apple.Safari.plist
编辑Safari的plist文件,并且需要重新启动系统才能生效)
我在这里待了很长时间。向可能的方向轻推也可以!
谢谢!
答案 0 :(得分:3)
原因是,在Mac OS Mavericks中,苹果开始缓存plist文件,这导致手动替换plist文件无效,直到自动重新加载缓存为止。如果您打开使用此plist文件的应用程序,它会用旧的/缓存的文件覆盖您复制的文件。
要手动重新加载首选项文件,请使用defaults read <filename>.plist
来读取新的plist值。
来源:nethack
现在,我在执行程序后仅使用sh
脚本来调用defaults
。