我可以在 shell 脚本或 Conky 配置中检测第二个显示器的存在吗?

我可以在 shell 脚本或 Conky 配置中检测第二个显示器的存在吗?

我想根据我是将笔记本电脑放在膝盖上(一个屏幕)还是将其放在连接到更大显示器的桌子上(双显示器)来修改我的 conky 位置。

问题是,无论如何我都希望它出现在我的笔记本电脑屏幕的左下角。但是在我的双显示器设置中,“左下角”恰好出现在我的外接显示器上。

似乎有两个解决方案:

  • 在我用来启动 conky (conky.sh) 的脚本中添加一个 if/else 语句,该脚本根据我的显示排列启动不同的配置文件。

  • 在我的 conky 配置中添加一个 if/else 语句,根据显示排列设置对齐方式或缩进值。

(是的,我意识到至少 shell 版本只有在我启动 conky 时插入/拔出东西时才会起作用。我可以接受这一点。

但是...我甚至不知道如何在 bash 或 conky 中检测双显示器或第二个显示器。

答案1

Nathan 的上述建议在任何情况下都会给出相同的结果,因为该xrandr命令提供了有关所有显示输出的信息(已连接/已断开连接)。

此代码将起作用:

$ xrandr | grep -sw 'connected' | wc -l

注意:这不是我的想法。我只是合并了 Nathan 的建议和

答案2

您可以使用 xrandr 和 grep 来检测已连接的监视器。然后使用来wc -l计算返回的行数。

在终端中尝试这个:

xrandr | grep connected | wc -l

相关内容