如何在Bash中对数值执行增减操作以调整笔记本屏幕亮度
Linux CLI 亮度±50调整实现方案
单次执行命令
- 亮度+50(自动限制最大值为255,避免超出亮度范围)
echo $(( cur=$(cat /sys/class/backlight/amdgpu_bl0/brightness), cur+50 > 255 ? 255 : cur+50 )) | sudo tee /sys/class/backlight/amdgpu_bl0/brightness
- 亮度-50(自动限制最小值为0,避免出现无效负值)
echo $(( cur=$(cat /sys/class/backlight/amdgpu_bl0/brightness), cur-50 < 0 ? 0 : cur-50 )) | sudo tee /sys/class/backlight/amdgpu_bl0/brightness
快捷调用配置
如果需要频繁调整,可以把命令设置为shell别名,后续执行对应命令即可直接调整:
- 编辑当前用户的shell配置文件(bash用
~/.bashrc,zsh用~/.zshrc),添加以下两行:
alias brightup='echo $(( cur=$(cat /sys/class/backlight/amdgpu_bl0/brightness), cur+50 > 255 ? 255 : cur+50 )) | sudo tee /sys/class/backlight/amdgpu_bl0/brightness' alias brightdown='echo $(( cur=$(cat /sys/class/backlight/amdgpu_bl0/brightness), cur-50 < 0 ? 0 : cur-50 )) | sudo tee /sys/class/backlight/amdgpu_bl0/brightness'
- 执行
source ~/.bashrc(或对应zsh配置文件)使配置生效,之后直接输入brightup即可调高亮度,brightdown即可调低亮度。
免sudo密码设置(可选)
如果不想每次执行都输入sudo密码,可以在sudoers中添加规则,允许当前用户无密码写入该亮度文件:
执行sudo visudo,在文件末尾添加一行(将你的用户名替换为实际的系统用户名):
你的用户名 ALL=(ALL) NOPASSWD: /usr/bin/tee /sys/class/backlight/amdgpu_bl0/brightness
保存退出后即可免密码执行亮度调整命令。
内容的提问来源于stack exchange,提问作者pakyrs
相关产品推荐
相关产品推荐

