Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux Bash脚本udev播放声音_Linux_Bash - Fatal编程技术网

Linux Bash脚本udev播放声音

Linux Bash脚本udev播放声音,linux,bash,Linux,Bash,我的脚本有问题。我添加了一个规则,可以检测是否插入了唯一的USB。这部分很好用。我的想法是,当我在棍子上做了一些事情后,我会发出声音,让用户知道什么时候可以拔下棍子。 我喜欢使用espeak,在没有规则的情况下尝试了它,它正在工作,但只是没有触发。 这是我的usb.sh: echo "Pluged in" >>/tmp/usb.log espeak "Backup done" 这是我补充的规则: ACTION=="add"

我的脚本有问题。我添加了一个规则,可以检测是否插入了唯一的USB。这部分很好用。我的想法是,当我在棍子上做了一些事情后,我会发出声音,让用户知道什么时候可以拔下棍子。 我喜欢使用espeak,在没有规则的情况下尝试了它,它正在工作,但只是没有触发。 这是我的usb.sh:

echo "Pluged in" >>/tmp/usb.log
espeak "Backup done"
这是我补充的规则:

ACTION=="add",KERNEL=="sdb1", SUBSYSTEM=="block" ,ATTRS{idVendor}=="0951", ATTRS{idProduct}=="1666" ,RUN+="/home/user/usb/usb.sh"

我相信当从规则启动时,
路径
是不一样的。尝试用
/usr/bin/espeak
替换
espeak
,用
/bin/echo
替换
echo
,仍然无法解决我的问题。Echo工作正常,可以写东西。另外,我的另一个问题是我的其他东西也不会被触发。当然,
/home/user/usb/usb.sh
有正确的权限,
。/user/。
不是实际值吗?对不起,你在哪里添加了“规则”呢?(/full/path/please/to/file;-)?)。祝你好运@Sheller我将我的实际用户名与用户进行了交换,所以不用担心^^。我更改了我的文件的权限
sudo chmod+x./usb.sh
。我在
/etc/udev/rules.d/backup.rules
中创建了一个文件解决了您的问题吗?如果你已经弄明白了,在48小时后发布一个答案?hrs您可以接受自己的答案并获得宝贵的声誉点数;-)。对不起,我不能再帮你了。祝你好运我相信当从规则启动时,
路径
是不一样的。尝试用
/usr/bin/espeak
替换
espeak
,用
/bin/echo
替换
echo
,仍然无法解决我的问题。Echo工作正常,可以写东西。另外,我的另一个问题是我的其他东西也不会被触发。当然,
/home/user/usb/usb.sh
有正确的权限,
。/user/。
不是实际值吗?对不起,你在哪里添加了“规则”呢?(/full/path/please/to/file;-)?)。祝你好运@Sheller我将我的实际用户名与用户进行了交换,所以不用担心^^。我更改了我的文件的权限
sudo chmod+x./usb.sh
。我在
/etc/udev/rules.d/backup.rules
中创建了一个文件解决了您的问题吗?如果你已经弄明白了,在48小时后发布一个答案?hrs您可以接受自己的答案并获得宝贵的声誉点数;-)。对不起,我不能再帮你了。祝你好运