有办法查询MacBook LCD当前的亮度级别吗?

问题描述 投票:0回答:4

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

macos lcd screen-brightness
4个回答
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 知识的人可以制作一个示例......


3
投票

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

我编写了一个简短的 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 "]"

0
投票

我发现很多工具都承诺可以查询或设置我的 MacBook M2 的亮度,但到目前为止还没有工具起作用。甚至 epatel 的 答案 也对我不起作用。命令输出根本没有亮度部分。 但是有一个名为“Lunar”的应用程序,具有不同的显示亮度等控制功能。

使用该工具可以带来好处,但许多选项都是专业版功能。该工具很好,但我并不真正需要它们的任何 UI 功能。我只是想使用 CLI 查询内部 Mac 屏幕的当前亮度或将其打开/关闭。 CLI 不是 Pro 功能。

# install CLI once (after installing the app)
/Applications/Lunar.app/Contents/MacOS/Lunar install-cli

来自他们的命令文档:

概述:控制显示器或获取有关显示器当前状态的数据。

示例:
将名为 Dell 的显示器的亮度设置为 60%:

lunar displays dell brightness 60

名称中带有
LG
4K
的显示器的打印对比度:
lunar displays lg4k contrast

将主显示屏旋转为纵向模式:
lunar displays main rotation 90

打印所有显示器的详细信息:
lunar displays

用途:月球显示 [] [] [] []

内部屏幕可以通过 CLI 控制,如下所示:

# query internal screen
~/.local/bin/lunar displays "Built-in" brightness

# Produces this output:
# 0: Built-in
#      brightness: 100

# Get the number
~/.local/bin/lunar displays "Built-in" brightness | \
  grep brightness | `# get second line` \
  awk -F':' '{ print $2 }' # Get 'argument' no. 2 (the '100')

# turn internal screen off
~/.local/bin/lunar displays "Built-in" brightness 0

# turn internal screen on
~/.local/bin/lunar displays "Built-in" brightness 100

免责声明:我与提供此工具的公司没有任何关系。我刚刚发现没有其他工具可以在我的设备上运行。 也许有人可以从中受益。否则,其他工具应该由其维护人员修复,以便在像我这样的系统上按预期工作。这对我来说同样可以接受。现在,我只是继续使用这个 CLI。


-3
投票

我不是 Mac 用户,但是 /proc 存在于文件系统中吗?您可能想查看该虚拟文件目录(如果存在)。

© www.soinside.com 2019 - 2024. All rights reserved.