当前位置: 首页>>技术教程>>正文


如何从命令行更改亮度,颜色和清晰度?

, , ,

问题描述

我正在使用SSH和脚本控制PC。如何从命令行更改亮度,颜色和清晰度?

尝试1:失败

$ sudo redshift -t 5000:5000 -g .5
Cannot list GNOME panel applets.
Initialization of gnome-clock failed.
Trying next provider...
Latitude and longitude must be set.

尝试2:失败

$ cat brightness 
20
$ cat max_brightness 
20
$ echo 1 | sudo tee /sys/class/backlight/acpi_video0/brightness 
1
$ echo 20 | sudo tee /sys/class/backlight/acpi_video0/brightness 

还有其他替代方法吗?

后续行动:http://jonls.dk/redshift/

[command]     [1000K to 10000K]       [effects 0.1 to 10.0]
|       |     /      /                /
^       ^     ^      ^                ^
redshift  -t  1000:1000   -l 0:0  -g .1; Dark
redshift  -t  1000:1000   -l 0.0  -g  5; Bright

最佳回答

如果您的图形卡驱动程序支持,则可以使用xrandr

以下命令列出了当前配置:

xrandr --current --verbose

如果要更改输出的配置,则需要输出的名称。此名称是xrandr --current输出的一部分,例如LVDS1

亮度可以这样更改:

xrandr --output <outputname> --brightness 0.8

伽玛值:

xrandr --output <outputname> --gamma 0.5:1.0:1.0

次佳回答

xrandr不会在硬件级别(由笔记本电脑的显示亮度键更改的亮度)上增加屏幕亮度。正如xrandr手册所述:

–brightness brightness

Multiply the gamma values on the crtc currently attached to the output to specified floating value. Useful for overly bright or overly dim outputs. However, this is a software only modification, if your hardware has support to actually change the brightness, you will probably prefer to use xbacklight.

而是使用xbacklight更改亮度:

xbacklight -get #get the current level
xbacklight -set *percent* #set brightness to a given percentage
xbacklight -inc *percent* #increase by a given percentage
xbacklight -dec *percent* #decrease by a given percentage

但是,由于这与使用笔记本电脑的亮度键相同,因此不能超出0-100%的限制。如果您希望使屏幕的亮度超出该限制,可以使用xrandr强制软件亮度级别:

xrandr --output LVDS1 --brightness 0.5

请注意,xrandr接受分数(0.0-1.0),而xbacklight接受百分比(0-100)

第三种回答

对于笔记本电脑,我刚刚从man xrandr了解到:

   --brightness brightness
          Multiply  the gamma values on the crtc currently attached to the
          output to specified floating value. Useful for overly bright  or
          overly  dim outputs.  However, this is a software only modifica‐
          tion, if your  hardware  has  support  to  actually  change  the
          brightness, you will probably prefer to use xbacklight.

所以我尝试了

xbacklight -get
xbacklight -set 70

而且有效!

第四种回答

如果您使用的是redshift,则需要为其指定纬度和经度,以便它知道一天中的何时更改。就像是

redshift -t 5000:5000 -l 55.7:12.6 -g .5 

尽管可能会有点非常规地使用redshift :)

另外,它在没有sudo的情况下也可以正常工作。

第五种回答

我使用此脚本一次设置所有显示器的亮度:

#!/bin/bash
if [ -z $1 ]; then
    echo "Usage: brighntess BRIGHTNESS"
    echo "BRIGHTNESS is a float (0.0-1.0)"
else
    xrandr --listmonitors | grep "^ " | cut -f 6 -d' ' | \
    xargs --replace=MONITOR xrandr --output MONITOR --brightness $1
fi

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/8407.html,未经允许,请勿转载。