当我的笔记本电脑连接坞站时,如何执行命令?

当我的笔记本电脑连接坞站时,如何执行命令?

我有一台带有扩展坞和外部屏幕的 Lenovo X220。现在我必须xrandr根据情况手动启动快捷方式才能使用我想要的屏幕。

例如 :

  • 对接:xrandr具有外部屏幕输出
  • 未对接:xrandr带笔记本电脑屏幕输出

我想知道如何自动执行此操作,也许在lsusb的输出的帮助下?当笔记本电脑插入坞站时,它会列出Lenovo ThinkPad Mini Dock Plus Series 3,有没有办法检测到它,然后运行相应的xrandr命令?

或者也许还有另一个更简单的解决方案?

答案1

您可以使用udev:

# /etc/udev/rules.d/<priority>-<name>.rules

ACTION=="add", BUS="usb", SYSFS{serial}="<serial-number>", NAME="<name>", RUN="/your/xrandr/script"

(例如<priority>可能是50<name> docked-monitor

SYSFSNAME设置来自哪里lsusb。还可以使用针对特定设备(您的扩展坞)的其他选项,请参阅手册页(上面链接)以了解对您最方便的选项。

然后重新加载即可生效:

$ udevadm control --reload-rules

相关内容