我在定制板上有一个嵌入式 Linux,我想通过其串行端口发送和接收文件。
与此设备通信的唯一方法是通过串行端口,并且该设备在此串行端口上提供了一个控制台。
这块板kermit
既没有busybox rx
也没有lrzsz
。
- 发送文件到远程
我能够按照这个线程将文件发送到董事会。
Host side Remote side
cat file | base64 > file_b64
cat > file_b64
minicom's ctrlA-S => send 'file_b64'
cat file_b64 | base64 --decode > file
- 从远程获取文件
现在我想从远程系统中检索一个文件。
Minicom 有一个用于接收文件的工具,但由于我只有串行端口的控制台,使用 minicom 在远程端发出命令,我找不到如何去做。
我曾尝试在主机端使用 kermit,但似乎我还需要在远程端使用 kermit。
编辑:
我也尝试反转发送方法,但没有成功,因为我没有从主机端的串行端口收到任何东西。
Host side Remote side
cat file | base64 > file_b64
(sleep 10; cat file_b64 > /dev/ttyS0) &
minicom's ctrlA-X => exit minicom
cat /dev/ttyUSB0 > file_b64
不能使用 minicom 的接收工具,因为它只支持xmodem
, ymodem
,zmodem
和kermit
传输,不支持 ascii。
有没有办法从远程检索文件而无需在其控制台中键入命令?
最后发现我在接收方发出了错误的命令。
接收命令应为:
cat < /dev/ttyUSB0 > file_b64
概括
从远程接收:
总结上面的帖子,我发现了这样的东西:
发送。
开始接收目标:
使用Ctrl-A + Q退出 minicom,然后在主机上运行:
返回 minicom 并按Ctrl-D完成接收过程。
接收。
开始延迟发送目标:
使用Ctrl-A + Q退出 minicom 。然后开始在主机上接收: