我尝试从日志文件中获取一些信息,但我使用 grep 获取数字,并且想要获取像在 gedit 中看到的文本。命令
结果file
:
ASCII text, with CR, LF line terminators
我还检查了nano
显示文本。
图片显示 CLI 中的 1650 个数字以及 gedit 中的 NMEA 文本,这是查看同一文件开头的结果。
od -tx1a your_file | head -n30
0000000 4e 4d 45 41 2c 24 47 4e 47 47 41 2c 31 32 30 38 NMEA , $GNGGA , 1 2 0 8 0000020 32 34 2e 37 35 32 2c 35 32 31 36 2e 33 31 34 34 2 4 . 7 5 2、5 2 1 6。 3 1 4 4 0000040 2c 4e 2c 30 32 30 35 39 2e 30 38 37 37 2c 45 2c , N , 0 2 0 5 9 。 0 8 7 7 , E , 0000060 30 2c 30 2c 2c 35 37 2e 35 2c 4d 2c 33 38 2e 39 0 , 0 , , 5 7 。 5、米、3 8。 9 0000100 2c 4d 2c 2c 2a 36 31 0d 2c 31 36 35 39 30 31 30 , 男 , , * 6 1 cr , 1 6 5 9 0 1 0 0000120 31 30 34 30 30 30 0a 4e 4d 45 41 2c 24 47 50 47 1 0 4 0 0 0 nl NMEA , $ GPG 0000140 53 41 2c 41 2c 31 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 萨、阿、1、、、、、、、、、、、、、、 0000160 2c 2c 2c 39 39 2e 39 39 2c 39 39 2e 39 39 2c 39 ,,,, 9 9 . 9 9 , 9 9 。 9 9 , 9 0000200 39 2e 39 39 2a 33 30 0d 2c 31 36 35 39 30 31 30 9. 9 9 * 3 0 cr , 1 6 5 9 0 1 0 0000220 31 30 34 30 30 30 0a 4e 4d 45 41 2c 24 47 4c 47 1 0 4 0 0 0 nl NMEA , $ GLG 0000240 53 41 2c 41 2c 31 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 萨、阿、1、、、、、、、、、、、、、、 0000260 2c 2c 2c 39 39 2e 39 39 2c 39 39 2e 39 39 2c 39 ,,,, 9 9 . 9 9 , 9 9 。 9 9 , 9 0000300 39 2e 39 39 2a 32 43 0d 2c 31 36 35 39 30 31 30 9. 9 9 * 2 Ccr , 1 6 5 9 0 1 0 0000320 31 30 34 30 30 30 0a 4e 4d 45 41 2c 24 42 44 47 1 0 4 0 0 0 nl NMEA , $ BDG 0000340 53 41 2c 41 2c 31 2c 2c 2c 2c 2c 2c 2c 2c 2c 2c 萨、阿、1、、、、、、、、、、、、、、
答案1
您的终端显示 \n (LF)的换行符,但您的文件包含看似不同的换行符。它不是如所声称的 CRLF,因为否则你的终端实际上会显示换行符!
尝试通过管道dos2unix
进行显示:
dos2unix < somefile.nmea | head
然而,说实话,你的文本文件中有两种不同类型的换行符,这一事实让我对产生这种情况的 GPS 固件非常怀疑。顺便说一下,NMEA 对此非常清楚,行之间的分隔符是 LF,因此控制台上的简单输出肯定应该显示正确的内容!