问题是:我不知道如何在命令行上增加和减少LCD的亮度。你呢?
#1 楼
打开您的终端并输入xrandr -q | grep " connected"
,它将以
LVDS1 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
显示输出。 >
有LVDS1代表您的显示器。所以现在您要做的是
xrandr --output LVDS1 --brightness 0.5
0.5代表亮度级别,范围从0.0到1.0。
0.0->全黑.so必须选择所需的亮度值。
这不会改变硬件级别的亮度。从
randr
手册:--brightness brightness
将当前连接到输出的crtc的伽马值乘以指定的浮点值。对于过亮或过暗的输出有用。但是,这是仅软件的修改,如果您的硬件支持实际更改亮度,则您可能会更喜欢使用xbacklight。评论
谢谢您的回答,但我需要的是xrandr之类的东西-增加10可使亮度增加10%。那有可能吗?
–user69748
2012年12月14日上午11:50
这似乎并没有改变硬件级别的亮度
–erjoalgo
13-10-18在6:29
太糟糕了,这个答案获得了很多选票。我的笔记本电脑屏幕“模仿”黑暗,也就是说通过使事物看起来更暗(就像在播放带夜景的视频时一样,这与屏幕亮度无关,而与遮盖背景光的像素无关)。亮度完全一样,因为像素比现在更暗,浪费的电池比以前更多。
–墨菲斯托
2014年11月16日15:47
伪造亮度。亮度不变,由软件渲染。
–user1970939
16年4月1日在20:58
我可以确认这只是模拟亮度,而不会改变显示器背景光的亮度。有趣的是,鼠标指针的亮度没有改变,使其比桌面其余部分要明亮得多。
– nyi
16-4-14的8:24
#2 楼
注意:xbacklight
仅适用于Intel,不适用于Radeon,也不适用于模式设置驱动程序(源)。它也只能在X11上使用,而不能在Wayland上使用。我们要做的另一种方法是使用另一个名为xbacklight的新程序,打开您的终端并键入此
sudo apt-get install xbacklight
然后键入此
xbacklight -set 50
亮度范围有50个代表,我们可以将亮度从0提高到100。
您还可以将亮度从当前值增加或减少到指定水平。到当前亮度值的10%,那么您可以给此
xbacklight -inc 10
,降低10%您可以给这个亮度
xbacklight -dec 10
评论
看起来像一个非常简单的命令,但是我需要的是xbacklight之类的东西-增加10可以将亮度增加10%。那有可能吗?
–user69748
2012年8月24日在9:31
@ user69748答案已编辑
–rɑːdʒɑ
2012年8月24日上午10:47
是的你可以。我已经提到了。所以你可以通过xbacklight -inc 10来获得
–rɑːdʒɑ
2012年8月24日在16:53
这看起来确实很简单,但不幸的是,它对我不起作用。亮度根本不会改变,不会使用-dec和-set来改变。我想我必须希望该错误能尽快得到解决。尽管如此,还是谢谢你。
–user69748
2012年9月4日14:38
此外,还有一个速记可以使用:xbacklight +10; xbacklight -10; xbacklight = 50;
–福特
16 Mar 9 '16 at 18:48
#3 楼
以下对我有用:echo 400 | sudo tee /sys/class/backlight/intel_backlight/brightness
我想可能的最大值在
/sys/class/backlight/intel_backlight/max_brightness
文件中。用星号替换
intel_backlight
到所有背光。评论
@Ray尝试一下:echo 400 | sudo tee / sys / class / backlight / intel_backlight /亮度。
– Mygod
15年11月28日在17:39
在执行sudo echo 400> / sys / class时使用@Ray。 .. ./亮度重定向是通过外壳而不是通过回声来完成的。 Shell仍以您的普通用户身份运行,而不是以sudo身份运行。这就是为什么它授予的权限被拒绝。您需要有一个实用程序,该实用程序将以root权限写入文件,这就是tee工作的原因。
– Sergiy Kolodyazhnyy
16 Mar 9 '16 at 19:37
回声400 sudo tee / sys / class / backlight / radeon_bl0 /亮度radeon APU和卡
– Suici Doga
16年4月1日在11:40
这是低级的,但实际上似乎是唯一可靠的方法。如果您对sudo chmod 0646亮度文件进行设置,它会变得不那么丑陋,因此不再需要sudo来设置亮度。
–leftaround关于
16年5月24日21:00
将此设置为su权限的原因是,可以想象,病毒可能会使您的屏幕变暗并以难以置信的速度变亮,最终损坏您的硬件显示。在90年代,我遇到了一种病毒,该病毒会迅速调整屏幕刷新频率,以至于您的显示器无法正常工作。因此,请谨慎调整权限。
– RyanNerd
16-10-21在16:21
#4 楼
对于笔记本电脑,sudo setpci -s 00:02.0 F4.B=80
将
80
更改为[0-FF]
,以获得最低的最高亮度。指定的值以十六进制表示,因此
80
将为您提供50%
的最大亮度。用于台式机进行伽玛校正(未经我测试),
xgamma -gamma .75
评论
谢谢您的回答,但是我需要的是setpci之类的东西-增加10可使亮度增加10%。那有可能吗?
–user69748
2012年12月14日上午11:50
这是唯一适用于Samsung NB30 Plus的答案。
–OSE
13年10月21日在18:33
我似乎无法正常工作。。也许应该更改一些参数,如果可以,如何找到合适的值?
–拉斯穆斯
2014年10月2日在8:27
谢谢,我在笔记本电脑上,setpci不起作用,但xgamma起作用。
– Philip Kirkbride
18年5月2日在13:26
如果要使用[0-255]范围,则可以使用$(echo“ obase = 16; ibase = 10; 128” | bc)(约50%)。 ibase = 10;是可选的。
–巴勃罗·比安奇(Pablo Bianchi)
20/11/15在17:56
#5 楼
将DBus与Gnome配合使用您可以使用以下方法增加/降低亮度:
# Step up:
gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.gnome.SettingsDaemon.Power.Screen.StepUp
# Step down:
gdbus call --session --dest org.gnome.SettingsDaemon.Power --object-path /org/gnome/SettingsDaemon/Power --method org.gnome.SettingsDaemon.Power.Screen.StepDown
注意事项
无需root特权!不同于
/sys/class/backlight
的方式来源:Arch Wiki
xbacklight
并不总是有效xrandr
只是进行伽马校正对于KDE,请检查此答案
评论
+1确认这在内部LCD显示屏上效果很好。它不会影响已经由xrandr gamma和亮度脚本控制的外部显示器。
–WinEunuuchs2Unix
19年4月6日在16:25
#6 楼
编写此脚本:set-brightness.sh
#!/bin/bash
TARGET="acpi_video0"
cd /sys/class/backlight
MAX="$(cat "${TARGET}/max_brightness")"
# The `/1` at the end forced bc to cast the result
# to an integer, even if is a float (which it
# should be)
LOGIC="$(echo "( * ${MAX})/1" | bc)"
for i in */; do
if [[ "${TARGET}/" != "$i" && -e "${i}brightness" ]]; then
cat "${i}max_brightness" > "${i}brightness"
fi
done
echo "$LOGIC" > "${TARGET}/brightness"
运行为根,其值介于0到1之间。
sudo ./set-brightness.sh 0.5
如果您的系统没有
/sys/class/backlight/acpi_video0
,则该目录中至少应有一个目录,这可能是特定于设备的(例如,我也有radeon_bl0
)。 如果还有其他对象,请记住它们的值堆栈(循环,将所有其他值推为1.0,然后将目标值设置为所需的值)。
尽管
acpi_video0
应该总是可以工作,并非总是具有全部可用的物理亮度。尝试每一种,并将色域最大的一种用作“目标”。评论
考虑使用/ sys / class / backlight / * / brightness,而不是尝试将acpi_video0硬编码到脚本中。它将允许通用化文件的路径,该路径可以不同-例如,我具有intel_backlight而不是acpi_video0。这就是我在这里的脚本中使用的
– Sergiy Kolodyazhnyy
16 Mar 9 '16 at 19:41
#7 楼
在终端中尝试以下操作:xrandr --output LVDS1 --brightness 0.9
您可以根据需要更改最后一个值,例如。 0.2
评论
1)输出并不总是LVDS1,但用户可以使用xrandr --verbose来查找2)不更改背光强度
–erjoalgo
13-10-18在6:31
#8 楼
这条短线可以帮助您放松一下眼睛。只需使用该行创建crontaab或编写脚本xrandr --output VGA1 --brightness 0.5; sleep 20; xrandr --output VGA1 --brightness 1
#9 楼
正如@palacsint所说,echo 244 > /sys/class/backlight/intel_backlight/brightness
路径对我有用。但是最大值和最小值分别在
/sys/class/backlight/intel_backlight/max_brightness
和/sys/class/backlight/intel_backlight/bl_power
文件中发送。此外,计算机的实际亮度是
/sys/class/backlight/intel_backlight/actual_brightness
中存在正在运行的#10 楼
KDE 4.12:qdbus org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl setBrightness 55
KDE Plasma版本:5.14.3:
以上代码仍然有效。仅当您是KDE用户时,它才有效。但是,在这种情况下,它将不需要其他软件。它将具有与使用“电池和亮度”小部件时完全相同的行为。 AFAIK会改变物理背光,而
xrandr
则不会。请注意上面的55不是100的分数,后者是最大亮度。
相反与max_brightness有关:
qdbus org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl brightnessMax
脚本中还可能有一个“静音”版本,您可能更喜欢:
qdbus org.kde.Solid.PowerManagement /org/kde/Solid/PowerManagement/Actions/BrightnessControl setBrightnessSilent 2000
参考:qdbus,纯色,亮度
评论
您能解释一下它将做什么吗?
–rɑːdʒɑ
2014年4月8日在18:27
#11 楼
使用以上答案,我创建了此脚本(保存在我的主目录中,名为Brightness.sh)来修改显示器的亮度(因为笔记本电脑的键盘遇到了溢茶问题,变得无法使用)。随时使用它(如果您有指定的文件...否则,需要修改以指向它们的变体)。#!/bin/bash
function main_menu
{
sudo clear
cursetting=$(cat /sys/class/backlight/intel_backlight/brightness)
maxsetting=$(cat /sys/class/backlight/intel_backlight/max_brightness)
powersave=$((maxsetting/5))
conservative=$((powersave*2))
medium=$((powersave*3))
performance=$((powersave*4))
echo ""
echo "----------------------- Brightness -----------------------"
echo " 1. Set Display to Minimum (Powersave) brightness setting."
echo " 2. Set Display to Low (Conservative) brightness setting."
echo " 3. Set Display to Medium brightness setting."
echo " 4. Set Display to High (Performance) brightness setting."
echo " 5. Set Display to Maximum brightness setting."
echo " 6. Exit."
echo "----------------------------------------------------------"
if [ $cursetting -eq $powersave ]; then
cursetting='Minimum'
else
if [ $cursetting -eq $conservative ]; then
cursetting='Conservative'
else
if [ $cursetting -eq $medium ]; then
cursetting='Medium'
else
if [ $cursetting -eq $performance ]; then
cursetting='Performance'
else
if [ $cursetting -eq $maxsetting ]; then
cursetting='Maximum'
fi
fi
fi
fi
fi
echo " Current Display Setting - "$cursetting;
choice=7
echo ""
echo -e "Please enter your choice: \c"
}
function press_enter
{
echo ""
echo -n "Press Enter to continue."
read
main_menu
}
main_menu
while [ $choice -eq 7 ]; do
read choice
if [ $choice -eq 1 ]; then
echo $powersave | sudo tee /sys/class/backlight/intel_backlight/brightness
main_menu
else
if [ $choice -eq 2 ]; then
echo $conservative | sudo tee /sys/class/backlight/intel_backlight/brightness
main_menu
else
if [ $choice -eq 3 ]; then
echo $medium | sudo tee /sys/class/backlight/intel_backlight/brightness
main_menu
else
if [ $choice -eq 4 ]; then
echo $performance | sudo tee /sys/class/backlight/intel_backlight/brightness
main_menu
else
if [ $choice -eq 5 ]; then
echo $maxsetting | sudo tee /sys/class/backlight/intel_backlight/brightness
main_menu
else
if [ $choice -eq 6 ]; then
exit;
else
echo -e "Please enter the NUMBER of your choice: \c"
choice = 7
fi
fi
fi
fi
fi
fi
done
评论
您可以做得比仅嵌套很多if条件(例如elif甚至更好的情况)更好。另外,我建议阅读google.github.io/styleguide/shell.xml之类的样式指南,并尝试像shellcheck这样的小工具,因为它可以帮助您创建更好的代码。我希望几年前我开始编写脚本时有人告诉过我。 :)
– LiveWireBT
19年1月2日,下午5:38
#12 楼
ddccontrol是用于控制外部显示器背光的另一种选择。在这里,我可以使用以下方法将外接显示器的背光设置为其功率的50%:ddccontrol -p -r 0x10 -w 50
我在寻找可能的解决方案来改善Redshift处理亮度的方式变化。通过那里,我发现有一个用于Linux内核的补丁程序集,可以改善跨设备的兼容性,从而使笔记本电脑和外部屏幕可以通过
sysfs
来类似地工作。同时,ddccontrol是唯一要做的事情在这里为我工作。与往常一样,Arch Wiki上也有关于该主题的完整文档。
#13 楼
设置绝对亮度(对于笔记本电脑用户):BRIGHTNESS=50 # 0 to 100
dbus-send \
--session \
--type=method_call \
--dest="org.gnome.SettingsDaemon.Power" \
/org/gnome/SettingsDaemon/Power \
org.freedesktop.DBus.Properties.Set \
string:"org.gnome.SettingsDaemon.Power.Screen" \
string:"Brightness" \
variant:int32:$BRIGHTNESS
#14 楼
使用xbacklight
的类似ncurses的交互式UI 一个穷人的ncurses。击中
h
,它下降了10%,击中了l
,它上升了10%。然后显示当前的亮度。xback() (
done=false;
echo "less: h, more: l, quit: q"
while ! $done; do
read -rsn1 key
if [ "$key" = h ]; then
xbacklight -dec 10
elif [ "$key" = l ]; then
xbacklight -inc 10
elif [ "$key" = q ]; then
done=true
fi
printf "\r$(xbacklight -get) "
done
)
#15 楼
根据placsint的回答cd /sys/class/backlight/intel_backlight/
cat max_brightness | sudo tee brightness
评论
askubuntu.com/a/469040的副本
–卡雷尔
20 Mar 11 '20 at 12:38
#16 楼
我使用i3作为窗口管理器,并且已经卸载了gnome,所以gnome解决方案对我不起作用。而其他基于软件的方法只是使屏幕看起来更黑。所以,经过一番阅读之后,我遇到了Brightctl。
使用apt install进行安装。
sudo apt install brightctl
您将需要权限来修改显示设备,只有视频组(显然是root)的成员才能执行此操作。因此,请确保将当前用户添加到视频组。您可以这样操作:
sudo usermod $(whoami) -a -G video
安装后,我可以使用以下命令将亮度增加/减少10,这是非常渐进的,可以给我更多的控制权。 :
#Increase brightness
/usr/bin/brightnessctl -d intel_backlight set +10
#Reduce brightness
/usr/bin/brightnessctl -d intel_backlight set 10-
我在我的i3配置中添加了快捷键。这是按键绑定的片段。
#Increase brightness
bindsym XF86MonBrightnessUp exec /usr/bin/brightnessctl -d intel_backlight set +10
#Reduce brightness
bindsym XF86MonBrightnessDown exec /usr/bin/brightnessctl -d intel_backlight set 10-
评论
可能无法更改联想笔记本电脑的亮度谢谢,Lekensteyn,但这不是自lsmod以来的重复。 grep ^ i915没有给出任何输出(请参阅接受的解决方案)。仍在寻找解决方案。