![如何创建命令来逐步增加红移的色温?](https://linux22.com/image/187877/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E5%91%BD%E4%BB%A4%E6%9D%A5%E9%80%90%E6%AD%A5%E5%A2%9E%E5%8A%A0%E7%BA%A2%E7%A7%BB%E7%9A%84%E8%89%B2%E6%B8%A9%EF%BC%9F.png)
redshift
是一款能够过滤蓝光的封装,因此人们可以避免眼睛疲劳。
这个软件不错,但是缺少调节滤镜色温的控件,逐渐地:没有滑块、按钮或命令。
当我说“增量”时,我的意思是我需要一个命令来根据先前的值设置色温。该包xbacklight
有一个很好的例子:
xbacklight +10 #increases monitor brightness by 10%
或者...
xbacklight -10 #decreases monitor brightness by 10%
因此,如果亮度值为 70%:现在,它将变为 60%。
我需要的是这样的命令:
temperature +10 #increases color temperature by 10%
redshift 已经提供了什么
使用redshift
,您可以手动设置色温,如下所示:
redshift -O 3000K
不过,没有内置方法可以将该值增加 10%。
因此,如果需要增加该值,需要这样做:
redshift -x #reset the previous value
redshift -O 3300K
请注意:我不仅必须手动计算新值,还必须首先重置以前的值。
为什么我需要这样做
我整天使用笔记本电脑学习。因此,我需要打开蓝光滤镜,以保护我的眼睛并提高工作效率。
我对如何制作一个简单的 shell 脚本可以做到这一点有一些想法,但我不知道如何去存储以前的值变量或在哪里正确存储这种脚本。
答案1
我想通了并制作了一个简单的包,名为临时颜色。
现在,我什至可以创建键盘快捷键来逐步更改色温。
安装
- 将存储库的内容放置在您想要的任何位置;
- 使
tempcolor
可执行:chmod +x ./tempcolor
; - 请随意创建符号链接
tempcolor
。- 是在
/usr/bin
; - 或者是在
$HOME/.local/bin
.
- 是在
用法
逐渐改变色温
tempcolor -inc <percent_value>
tempcolor -dec <percent_value>
重置色温(关闭)
tempcolor -x
使用一次性模式设置值 (-O)
tempcolor <value>