20

如何以编程方式更改 Linux 上的显示器亮度?

我正在使用 SLES 11。

4

10 回答 10

31

您可以随时使用

xrandr --output LVDS1 --brightness 0.9
于 2012-12-21T18:37:53.983 回答
14

您可以尝试使用 xbacklight。

xbacklight -set 100

于 2013-03-26T17:44:34.670 回答
4

在我的机器上,我以 root 身份运行以下命令:

echo -n 10 > /sys/devices/virtual/backlight/acpi_video0/brightness
于 2011-07-08T14:47:52.300 回答
4

对我来说,它与xbacklight. 例如,如果您希望设置键绑定,则可以使用

bindsym $SUPER+Shift+plus   exec  xbacklight -inc 10
bindsym $SUPER+Shift+minus  exec  xbacklight -dec 10

在您的窗口管理器配置中(我使用 i3)来调节屏幕的亮度级别。

我不建议xrandr这样做,因为它不会自动停止在 100% 亮度。

于 2015-10-08T22:57:41.927 回答
1

ddcutil应用程序可以通过 VESA DDC/MCCS 标准更改外部显示器的实际背光亮度(xrandr 只能在显示器当前设置的限制内移动 X11 输出,它不能更改实际背光亮度)。这应该适用于通过显示数据通道支持该功能的任何显示器(DDC 已经存在了一段时间,它得到了广泛的支持,但仅适用于外部显示器)。我使用 ddcutil 根据从网络摄像头采样的环境光水平自动调整我的显示器。Ddcutil 使用 i2c-dev 内核模块(modprobe i2c-dev 或将其设置为在引导时加载)。

ddcutil detect                    # Get list of DDC displays
ddcutil --display 2 capabilities  # List VCP feature key numbers
ddcutil --display 2 getvcp 10     # Get brightness by key number
ddcutil --display 2 setvcp 10 50  # Set brightness to 50                                                                            
于 2021-07-19T03:41:46.693 回答
0

您可能会考虑使用xgamma。虽然它不是纯代码,但至少它只是一个命令行实用程序。

于 2011-07-08T14:48:52.677 回答
0
于 2015-02-13T20:00:34.617 回答
0

这是在基于 Linux 的系统中控制亮度的简单步骤

首先,你要知道连接你的监控屏幕。

要知道这一点,请运行此命令

xrandr -q

它将提供有关屏幕的有用信息

屏幕信息

(这里我的屏幕连接到 eDP,您的系统可能会有所不同)

知道后运行以下命令

xrandr --output eDP --brightness[0-10]

从上面的输出中用您连接的屏幕替换 eDP。

您可以选择从 0.1 到 1.0 的正常亮度值

于 2020-08-30T04:46:23.980 回答
0

如果您安装了多个显示器和 php,请将其放入

/usr/bin/亮度

#!/usr/bin/php
<?
$br=(double)$argv[1];
if(!$br||$br>1) die("enter brightness lvl 0.1 - 1");
preg_match_all('!^(\S+)!m',`xrandr --current | grep ' connected'`,$m);
foreach($m[1] as $display){
        echo `xrandr --output $display --brightness $br`."\n";
}

比打电话brightness .7

于 2017-06-23T10:46:15.380 回答
0

为此的命令:

xgamma -gamma 0.7

于 2020-12-01T09:37:42.920 回答