运行脚本或java批处理是usb设备连接到raspberry pi

时间:2015-08-30 12:06:57

标签: shell usb raspberry-pi execute

我正在尝试运行shell脚本,如果一个特殊的USB设备连接到我的覆盆子pi。我试图遵循以下描述:

http://ubuntuforums.org/archive/index.php/t-502864.html

我创建了一个名为85-my_rule.rules的文件,内容如下: ACTION == “添加”,SUBSYSTEM == “USB_DEVICE”,SYSFS {idVendor} == “FFFF”,SYSFS {idProduct} == “1000”,RUN + = “/ USR /斌/ usbdevinserted”

我的脚本usbdevinserted具有以下内容: echo“Dies ist ein Text”>> / tmp / text

如果我在shell上执行此脚本,则创建名为text ist的文本文件,其内容为“Dies ist ein Text”,因此脚本可以正常工作。但是,如果我将一个usb设备连接到rasppi,它似乎不会被执行。所以我认为,错误在我的规则中,但我找不到它。有人可以帮帮我吗?

问候, 安德烈亚斯

2 个答案:

答案 0 :(得分:0)

供应商和产品ID是否正确?

ffff和1000看起来很奇怪,但有可能(例如某些评估板)。

通常,“dmesg”打印出VID / PID(插拔几次,“dmesg”,检查最后一行)

另外,仔细检查是否是十六进制转换问题(尝试十进制65535和4096)

答案 1 :(得分:0)

我找到了解决方案。我不得不将我的规则改为以下规则:

ACTION=="add",SUBSYSTEM=="block",KERNEL=="sd*[!0-9]|sr*",RUN+="/usr/bin/usbdevinserted"

我的脚本现在是:

#!/bin/bash
echo "Dies ist ein Text" >>/tmp/text

但我不知道为什么我必须在我的脚本中插入第一行。有人可以解释一下这条线吗?

问候, 安德烈亚斯