系统偏好设置存储在哪里?尝试为两个监视器编写相等的亮度设置


6

有谁知道Mac OS X上“系统偏好设置”的存储位置?我认为在某个地方有一些.plist。

我认为它们可能存储在多个.plist文件中。我正在寻找亮度滑块的设置,尤其是因为我希望能够编写一个脚本来将两个显示器的亮度设置为完全相同。

Answers:


10

偏好位置

某些系统范围的设置位于中/Library/Preferences,而某些用户设置的目录位于中~/Library/Preferences。之所以说“一些”,是因为我之前已经在这些位置找到了设置,但没有进行详尽的搜索。同样,这就是所谓的实现细节。Apple尚未公开记录该文件,也不打算供用户直接操作(通过编辑.plist文件),并且它的工作方式可能会在将来的OS X版本中更改而不会发出警告~/Library。 Lion很好地表明了该目录的内容不适合一般用户修改。因此,为了获得最佳效果,您应该通过“系统偏好设置”本身间接修改设置。

话虽如此,我更改了运行10.7.3的iMac的亮度,然后在上面列出的目录中查找更改的plist文件。我找不到与屏幕亮度有关的任何内容。

但是,我能够使用Automator记录工作流,该工作流打开“系统偏好设置”,转到“显示”首选项窗格,然后调整亮度滑块。对于您来说,这可能是一个更简单,更可靠的选择。快速的Google搜索表明自动化程序工作流可以从命令行运行,但是我没有尝试过。

我还要补充一点,我的设置之一是配备30英寸电影院显示屏的MacBook Air。将两者的亮度设置为相同百分比(例如25%)并不意味着亮度在视觉上是匹配的。您可能需要为每个显示器选择不同的亮度级别,以使它们显得同样明亮。

通过系统偏好设置监视文件系统使用情况

编辑:在运行系统偏好设置时,可以看到访问或修改了哪些plist文件的方式是在终端中运行以下命令:

sudo fs_usage -w | grep "System Pref" | grep plist | grep -v "Info\.plist"

该命令输出大量的路径和文件列表,其中有些不存在。我退出应用程序后,文件更新继续记录了几秒钟。

如果您选择这条路线,这是我的建议:

  • 将列表转储到文本文件
  • 消除重复路径
  • 查看已修改的文件。状态如“ stat64”,“ open”和“ getattrlist”的文件仅被打开以进行读取,但是状态为“ chmod”或“ rename”的文件正在被修改。我看到〜/ Library / Preferences / com.apple.systempreferences.plist文件以.CvkFEbo扩展名重命名,我相信这是系统执行原子文件写入的方式(以不同的名称写入整个文件,并且如果成功,则将其重命名为原始文件名)。

不幸的是,关于屏幕亮度设置仍然存在于磁盘上,我仍然没有打开任何东西,但是到目前为止,我只是略微浏览了fs_usage结果。

命令行工具来控制亮度

我找到了一篇文章,该文章列出了使用CoreGraphics框架在OS X上控制屏幕亮度的源代码。这篇文章已有两年多的历史了,我自己还没有尝试过,但是对您可能有用。最后有简单的编译说明。


嘿,谢谢您的回复。没关系,我知道自己可以进入并自己处理这些问题,但是我仍然想知道设置的存储位置。使用Automator脚本会有点乏味,因为我希望我的脚本可以通过一个简单的快捷方式立即运行。我将使用AppleScript编写“系统偏好设置”脚本,但看起来SystemPrefs不支持此功能。我认为,一个屏幕是否需要比另一个屏幕稍亮的设置并不重要,因为我可以通过使用您建议的百分比来补偿脚本中的设置。
詹姆斯·贝德福德


0

在Finder中。按住alt键并选择“转到”菜单。图书馆将暂时可见。如果要使库永久可见,请打开“终端”并键入:

chflags nohidden ~/Library/
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.