我运行以下命令:
cat /dev/smd7 & echo "AT+CSCS=\"GSM\";\r" > /dev/smd7
cat /dev/smd7 & echo "AT+CMGF=0;\r" > /dev/smd7
cat /dev/smd7 & echo "AT+CMGS=24;\r" > /dev/smd7然后输入PDU消息:
07...985C369F01我得到了这个输出:
/system/bin/sh: 07...985C369F01: not found发布于 2020-06-19 15:54:59
让我们分析提供给shell的两个命令:
cat /dev/smd7 &
echo "some_data" > /dev/smd7cat /dev/smd7 &:听设备/dev/smd7:从现在开始,从获得的所有数据----该设备将被重定向到stdout (您正在写入的shell )。在后台执行此操作( commandsecho "some_data" > /dev/smd7:),以便能够发送进一步的/dev/smd7,将some_data 发送到设备
1. The connection with the device is open
2. The data is sent
3. The connection is closed **and the control comes back to the shell**
当你发送echo "AT+CMGS=24;\r" > /dev/smd7
AT+CMGS=24;\r被发送到设备>提示字符,告诉您它正在等待PDU消息>提示符只是shell上的一个打印,所以任何发送的数据都将直接发送给>,发送的数据不是shell命令,not found错误显示为。
最后,为了将PDU消息正确地发送到设备,只需继续通过命令发送:
echo "07...985C369F01" > /dev/smd7注意:确保用CTRL+Z字符(ASCII 0x1A)终止序列。
发布于 2022-10-21 01:43:01
strace 2>/dev/null -e inject=ioctl:retval=0 microcom /dev/smd7互动会议:D
https://stackoverflow.com/questions/62451475
复制相似问题