插入或拔出USB设备后自动运行脚本
在挂载/插件或卸载/拔出USB设备后,如何自动运行脚本?
感谢MinimusHeximus以及他在对我的类似问题的评论中提到的主题的各自贡献者,我想我现在可以为您提供以下答案。
对于这样的USB设备,您需要5(5)个文件,如下所示,只需填写相应的值
:
/etc/udev/rules.d/00-usb-
ACTION=="add", ATTRS{idVendor}=="", ATTRS{idProduct}=="", ENV{XAUTHORITY}="/home//.Xauthority", ENV{DISPLAY}=":0", OWNER=" ", RUN+="/usr/local/bin/usb--in_udev" ACTION=="remove", ATTRS{idVendor}=="", ATTRS{idProduct}=="", ENV{XAUTHORITY}="/home//.Xauthority", ENV{DISPLAY}=":0", OWNER=" ", RUN+="/usr/local/bin/usb--out_udev"
/usr/local/bin/usb-
#!/bin/bash /usr/local/bin/usb--in &
/usr/local/bin/usb-
#!/bin/bash sleep 1
/usr/local/bin/usb-
#!/bin/bash /usr/local/bin/usb--out &
/usr/local/bin/usb-
#!/bin/bash sleep 1
笔记:
- 您可以通过在终端中输入命令
lsusb
来捕获值
和
– 当您的USB设备插入时 – 它将列出当前可用的所有USB设备,如Bus 003 Device 002: ID 8087:07da Intel Corp.
,其中8087是VendorID , 07da是ProductID 。 -
可以是您为USB设备选择的任意名称,例如,在为USB键盘创建此类文件时,我选择使用通用名称“ keyboard ”,这需要在插入时应用不同的键盘布局。 - 在某些情况下,当您不需要执行任何操作时,可能没有必要在udev规则文件中使用
ACTION=="remove"
行,从而使用相关的2(两个)“out
”文件(例如,反向)插入设备后插入设备时所做的更改。
文件管理器SpaceFM允许这样做。 请参阅自动运行设置,例如自动运行| 在挂载或自动运行| 在卸载 。