zoukankan      html  css  js  c++  java
  • 在linux下打开文件出现^M,^H

    0 Problem

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

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

    1 Reason

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

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

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

    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转换过格式
  • 相关阅读:
    重建Exchange邮件系统的系统邮箱
    枚举算法001
    关于网站备案的44个问题
    wireshack使用
    格言
    程序员遇到BUG的解释
    只要有信心任何事情都可以做成,今天表现不错哦,加油!
    踏实,自信
    学会经营自己的关系
    戒酒
  • 原文地址:https://www.cnblogs.com/liaohuiqiang/p/7571365.html
Copyright © 2011-2022 走看看