zoukankan      html  css  js  c++  java
  • 去除adb传输中的^M

    学习sed过程中,在文本中每行追加内容,发现使用adb会在行末追加一个看不到^M。

    场景一:adb保存到文件 adb shell ps|head -n 10 > text.txt,使用sed进行追加

    场景二:使用adb shell ps|head -n 10|sed 's/^.*$/&123' 进行追加

    直接使用adb shell ps|head -n|less发现在行末同样出现^M字符。

    场景三:进入adb shell,直接替换,正常。

    可以判定是adb传输过程中在行末增加了^M。

    参照https://blog.csdn.net/mengxianghn/article/details/52779196的5个方法,逐一尝试

    方法1: vi编辑器命令行模式下::%s/^M//g,回车即可替换。然而但是在vi编辑器中,是看不到^M的。

    执行命令  :%s/^M//g,提示如下信息。因此方法一不适用

     

    方法2: vi编辑器命令行下  :set fileformat=unix ,追加成功

    方法3: sed 's/^M//g' text.txt > text2.txt 方法三也不可用

    方法4: tr -d ' '

    方法5: dos2unix filename 我的Mac不支持该命令

     

    总结:对于adb传输中出现的行尾增加 导致的^M问题,使用 :set fileformat=unix 和 tr -d ' '可以解决。

  • 相关阅读:
    UVa 11181 (条件概率) Probability|Given
    UVa 1636 (概率) Headshot
    UVa 1262 (第k字典序) Password
    HDU 4746 (莫比乌斯反演) Mophues
    HDU 1695 (莫比乌斯反演) GCD
    POJ 3090 (欧拉函数) Visible Lattice Points
    CodeForces Round #283 Div.2
    UVa 10820 (打表、欧拉函数) Send a Table
    UVa 1635 (唯一分解定理) Irrelevant Elements
    Java基础10 接口的继承与抽象类
  • 原文地址:https://www.cnblogs.com/csj2018/p/9178872.html
Copyright © 2011-2022 走看看