有没有办法查询MacBook LCD的当前亮度?

时间:2009-02-13 21:09:49

标签: macos lcd screen-brightness

这个想法是,一旦亮度超过一定水平,就可以切换到不同的视觉方案,以提供更大的可见度。此外,如果它可能是某种类型的听众类型,那将会更好,但我将采取我能得到的东西。

3 个答案:

答案 0 :(得分:3)

我相信可以通过IOKit查找它。如下所示在终端中运行ioreg命令会给出两条亮度值可见的行。

% ioreg -c AppleGraphicsControlBacklight | grep brightness

| | |     "IODisplayParameters" = {"brightness"={"min"=0,"value"=408,"max"=1024},"commit"={"reg"=0}}
| |   |     "IODisplayParameters" = {"brightness"={"min"=0,"value"=408,"max"=1024},"commit"={"reg"=0}}

也许有足够IOKit知识的人可以整理样本......

答案 1 :(得分:2)

epatel非常接近,我只需要将AppleGraphicsControlBacklight关键字更改为其他内容以使其在我的macbook上运行,所以我猜这可能会在OSX版本和/或macbook版本之间发生变化。< / p>

我将一个简短的ruby脚本拼凑在一起,在命令行上打印出一个小的可视指示器。

# grab the string containing the values
brite_string = `ioreg -c AppleBacklightDisplay | grep brightness`

# build a regex to match those vals
brite_regex  = /"brightness"=\{"min"=([0-9]{1,3}),"value"=([0-9]{1,3}),"max"=([0-9]{1,3})/

# match them
match_data = brite_regex.match(brite_string)

# extract the values from the match
min = match_data[1].to_i
val = match_data[2].to_i
max = match_data[3].to_i

# print them out nice
puts "Current Brightness"
print "["

max.times do  |i|
  print i > val ? " " : "*"
end

puts "]"

答案 2 :(得分:-3)

我不是一个mac人,但/ proc存在于文件系统中吗?您可能希望查看该虚拟文件目录(如果存在)。