0 Problem

在服务器上跑keras实验,然后用tee指令把实验结果保存在文本文件中。

 文本文件在本机linux下用vim打开文件时会出现^M,^H。用sublime打开也会出现奇怪的字符。

1 Reason

    linux下的换行符是\n,windows是\r\n,所以windows下的文件在linux下打开的话,\r会作为控制字符^M显示。(mac下换行符是\r)

^H出现的原因未知,估计是keras的进度条显示的方法造成。其实原因不太重要,反正能去掉,保证看的顺眼就好了。

 说到控制字符,可以简单列举几个。如下表所示,其中LF和CR是常用的换行符,SOH, EOT, ESC三个字符在计算机网络的数据链路层的帧传输时用到过,NUL为C中字符串结束提供标志\0。

Seq   ^J ^M ^H ^A ^D ^{  
十进制       10 13 08 01 04 27 00
缩写       LF CR BS SOH EOT ESC NUL
字符名       

Line Feed

(换行)

Carriage Return

(回车)

Backspace

(退格)

Starting of Heading

(报头开始)

End of transmission

(传输结束)

Escape

(转义)

Null

(空)

2 Solution

在vim下把^M替换掉。注意^M的输入方式为:ctrl + v 和ctrl + m

:%s/^M$//g

所以文件里又一些奇怪的字符,也可以这样去掉,比如^H。注意^H的输入方式为:ctrl + v 和ctrl + h

 :%s/^H//g

3 Others

网上看到一些别的方法,take notes下。

:set ff=unix # 告诉vim使用unix换行符

find ./ -type f -print0 | xargs -0 dos2unix # 批量查找普通文件,然后执行dos2unix转换过格式

在linux下打开文件出现^M,^H的更多相关文章

  1. linux下打开文件、编辑文本cat\gedit\nano

    cat: 文本编辑器:gedit.nano,要获得根权限,在前面加上sudo

  2. linux下打开chm文件的方法

    windows中,通常情况下,chm文件可以使用系统自带的程序打开,但是linux就没有那么幸运了,那么,如何在linux下打开chm 文件呢?有小编来为您介绍介绍,本篇,小编以ubuntu环境为例 ...

  3. 解决Windows下文件在Linux下打开出现乱码的问题

    目录 问题 原理 解决 总结 参考资料 问题 前几天生病了,Java一直在看代码但是没跟着打,于是决定偷一波小小的懒,直接把教材的代码从Windows通过共享文件夹放到了Linux里面.但是编译的时候 ...

  4. Linux下打开超大文件的方法

    Linux下打开超大文件方法 在Linux下用VIM打开大小几个G.甚至几十个G的文件时,是非常慢的. 这时,我们可以利用下面的方法分割文件,然后再打开. 1 查看文件的前多少行 head -1000 ...

  5. Linux下的文件及文件后缀名

    Linux下的文件及文件后缀名 2013-03-14 15:34 6969人阅读 评论(0) 收藏 举报 ++++++++++++++++++++++++++++++++++++++正文+++++++ ...

  6. Linux 下查看文件字符编码和转换编码

    Linux 下查看文件字符编码和转换编码 如果你需要在Linux中操作windows下的文件,那么你可能会经常遇到文件编码转换的问题.Windows中默认的文件格式是GBK(gb2312),而Linu ...

  7. Linux Linux下最大文件描述符设置

    Linux下最大文件描述符设置 by:授客 QQ:1033553122 1.   系统可打开最大文件描述符设置 查看系统可打开最大文件描述符 # cat /proc/sys/fs/file-max 6 ...

  8. [转载]linux下core文件设置与查看

    转自:https://blog.csdn.net/dingqinghui/article/details/77855330?locationNum=9&fps=1 linux下core文件设置 ...

  9. linux 下vim文件乱码 cat文件正常处理方法

    linux 下vim文件乱码 cat文件正常处理方法 服务器支持中文字符集,cat和其他查看文件命令现在正常,vim还是出现了中文乱码问题, 1.查看文件编码格式 vim 文件 :set fileen ...

随机推荐

  1. MFC多国语言——资源副本

    此随笔主要参考了http://www.cnblogs.com/xianyunhe/archive/2011/09/02/2163842.html 为软件提供多国语言的支持的具体实现方法有很多,但基本原 ...

  2. JAVA“找不到或无法加载主类” 问题的解决办法

    http://blog.csdn.net/l_ong211314/article/details/8004975

  3. ASP.NET Web API中的路由

    ASP.NET Web API的默认路由在App_Start目录中的WebApiConfig.cs文件中定义的. public static class WebApiConfig { public s ...

  4. js如何去除多个cookie?

    转自:https://zhidao.baidu.com/question/211006012.html :1:设置cookie 最简单的就是:document.cookie="user=aa ...

  5. 160624、Spark读取数据库(Mysql)的四种方式讲解

    目前Spark支持四种方式从数据库中读取数据,这里以Mysql为例进行介绍. 一.不指定查询条件 这个方式链接MySql的函数原型是: 1 def jdbc(url: String, table: S ...

  6. 本地代码推送到github仓库

    git 初始化 cd 到需要提交的项目目录下,执行git init 配置用户名和邮箱 git config --global user.name "codingID" git co ...

  7. 学习使用turtlebot2——turtlebot2上使用Hokuyo激光雷达(型号UST-10LX)

    目标     在turtlebot2上添加Hokuyo激光雷达传感器,使用激光雷达调用gmapping进行建图. 配置情况     电脑使用Ubuntu 14.04版本,ROS为 Indigo,激光雷 ...

  8. 如何设置,使IntelliJ IDEA智能提示忽略大小写

  9. delphi 一些知识文章地址记录(正则)

    正则运用:http://www.cnblogs.com/del/archive/2007/12/21/1008108.html

  10. Storm 架构图

    画的丑,勉强看看吧 Nimbus我感觉他就像人的大脑一样! 当客户端给这个人发送了段信息 ,这个人的大脑就接收到这段信息,这个人不简单,是幕后大佬,一般不自己去干活,都是交给下面二当家去执行,当时这个 ...