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脚本中使用了另一个文件描述符名称。