我是 bash 脚本编写新手,我正在尝试配置我的视频输出,以便当我通过 VGA 连接外部显示器时我的笔记本电脑显示屏会关闭。
这是我想出的脚本,非常简单:
#!/bin/bash
myvar="$(xrandr -q)"
if [[ $myvar == *"VGA connected"* ]]
then
xrandr --output VGA --auto;
xrandr --output LVDS --off;
else
xrandr --output LVDS --auto;
fi
除了一点之外,一切都正常工作xrandr --output LVDS --off
,因为我的笔记本电脑显示屏只是调整其分辨率以匹配外部显示器的分辨率并保持打开状态。
无法弄清楚这个的错误。任何帮助表示赞赏。
答案1
--output LVDS --off
直接从 shell 运行时是否可以正常工作?
你能交换 - 部分中的行then
吗?也许存在一些时间问题?
答案2
尝试使用xset
命令(https://linux.die.net/man/1/xset)。
代替:
xrandr --output LVDS --off
使用类似的东西:
xset -display :0 dpms force off
我假设那:0
是你的笔记本电脑显示屏。