![使用 cat 传输文件会改变它](https://linux22.com/image/1115084/%E4%BD%BF%E7%94%A8%20cat%20%E4%BC%A0%E8%BE%93%E6%96%87%E4%BB%B6%E4%BC%9A%E6%94%B9%E5%8F%98%E5%AE%83.png)
我正在尝试通过 USB 电缆将一些视频从嵌入式 Linux + 摄像头传输到我的电脑。我所做的是cat file > /dev/ttyGS0
在卡上和cat /dev/ttyACM0 > file
在电脑文件上。传输后文件不同。我尝试在两边生成相同的文件(数字从 1 到 10000,每行 1 个),然后将卡上的文件传输到我的电脑。以下是od -x
给我的结果:
head transferedFile -n 10 | od -x
0000000 0d31 320a 0a0d 0d33 340a 0a0d 0d35 360a
0000020 0a0d 0d37 380a 0a0d 0d39 310a 0d30 000a
0000037
head originalFile -n 10 | od -x
0000000 0a31 0a32 0a33 0a34 0a35 0a36 0a37 0a38
0000020 0a39 3031 000a
0000025
十六进制代码不同。看起来传输0d
在文件中添加了符号(CR,回车符)。
你知道为什么吗?你知道如何在传输后获取准确的文件吗?
谢谢。
答案1
cat
用于复制文本文件
dd
用于逐位复制