iozone输出的文件打开是乱码怎么办
发布网友
发布时间:2022-07-17 17:28
我来回答
共1个回答
热心网友
时间:2023-10-06 23:13
结果输出的文档在Windows操作系统下打开显示乱码(在linux操作系统下用vim命令查看同样显示乱码),在word下采用UTF-8或其它编码都不行。
解决办法就是稍微更改一下命令,改为:
[root@centos
~]#
man
command
|
col
-b
>/home/command.txt
再次打开command.txt,一切正常。
在linux下使用vim命令查看生成的command.txt文件时我们会发现其实此“乱码”并非彼乱码,只是在字符间多了很多^H字符,这些字符在vim下显示为蓝色,一般表示控制字符,在Windows下用记事本工具打开则这些字符显示为乱码。
既然我们找到了“乱码”的规律,接下来就容易解决了。我们可以直接使用vim命令解决,具体方法如下:
在编辑模式下,输入:进入命令模式,在后面输入%s/^H//g。完整的就是:%s/^H//g。(一定注意输入^H的方法是先按住Ctrl键不放手,然后依次键入V和H,copy是没有用的,要手动输入)输入完成后按Enter键执行命令。待命令执行完成之后,我们来查看结果,发现依然不是我们想要的,因为同时出现了很多重复的字母。这又该怎么解决呢?也不用着急,我们稍稍修改一下命令即可解决了。具体是将命令修改为:%s/.^H//g。按下回车键待命令执行完成,我们再来查看一下这篇文档会发现已经完全恢复到它本来应该有的样子了!
这是什么原理呢?我们回过头来再观察一下那些有规律的“乱码”,其实不仅仅是控制字符^H,在这个字符前面还有一个字符或者空格,我们需要同时将之删除。所以对命令进行简单的调整后问题迎刃而解。
在第一个解决方法中,其中的关键是命令col。col指令是一个标准的文本输入过滤器,它从标注输入设备读取文本内容,并把标注内容显示到标注输出设备。在许多UNIX/LINUX说明文件里,都有RLF控制字符。当我们运用shell特殊字符”>”和”>>”,把说明文件的内容输出成纯文本文件时,控制字符会变成乱码,col指令则能有效滤除这些控制字符。