Linux bash脚本中的cat命令失败:cat:/dev/rfcomm0:没有这样的设备或地址
我想收听蓝牙连接并打印收到的文字信息。我可以通过以下命令执行此操作:Linux bash脚本中的cat命令失败:cat:/dev/rfcomm0:没有这样的设备或地址,linux,bash,shell,cat,Linux,Bash,Shell,Cat,我想收听蓝牙连接并打印收到的文字信息。我可以通过以下命令执行此操作:sudo rfcomm listen hci0&,然后我与另一个设备连接到蓝牙。建立连接后,将打印rfcomm命令 从DeviceMAC到/dev/rfcomm的连接 然后我执行cat/dev/rfcomm0命令来侦听和打印收到的消息。我希望使用以下bash脚本自动执行此操作: #!/bin/bash exec 3< <(sudo rfcomm listen hci0 &) echo "executed" w
sudo rfcomm listen hci0&
,然后我与另一个设备连接到蓝牙。建立连接后,将打印rfcomm命令
从DeviceMAC到/dev/rfcomm的连接
然后我执行cat/dev/rfcomm0
命令来侦听和打印收到的消息。我希望使用以下bash脚本自动执行此操作:
#!/bin/bash
exec 3< <(sudo rfcomm listen hci0 &)
echo "executed"
while read line; do
case "$line" in
*Connection*)
echo "Connection established."
cat "/dev/rfcomm0"
break
;;
*)
echo "'$line' does not Connection."
;;
esac
done <&3
exec 3<&-
#/bin/bash
执行3<可能是时间问题。如果将sleep 1
放在cat/dev/rfcomm0
之前,会发生什么情况?我尝试了sleep 5,但没有成功。在执行cat
之前,请使用ls/dev/*
验证您在/dev
中的内容。可能是拼写问题。我仔细检查了拼写问题,但我会试试看。似乎存在访问权限问题,或者/dev/rfcomm0在bash脚本中使用了另一个文件描述符名称。