linux shell 删除换行符(多行内容在一行显示)&删除空行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux shell 删除换行符(多行内容在一行显示)&删除空行相关的知识,希望对你有一定的参考价值。

删除换行符(多行内容在一行显示):

1.sed -e ‘:a;N;s/\n//;ta‘ filename

2.在Vi中,使用:%s/\n//g

3.cat filename |xargs echo 

    和cat filename|xargs 的行为是一样的,xargs默认是打印输出前一条命令的结果,将多行的内容在一行显示,最简单的方法


删除^M符号(CTRL+V,然后CTRL+M)

1.sed -e ‘s/^M//g‘ filename

2.在Vi中,使用:%s/^M//g

    "g"全文替换,不加"g"则只匹配替换掉第一个匹配,sed ‘1,2s/ab/cd/‘将第1、2行的ab替换成cd


删除空行符:
1.cat filename|tr -s ‘\n‘
2.sed ‘/^$/d‘ filename
3.awk ‘{if($0!="")print}‘ filename

4.grep -v "^$" filename


以上是关于linux shell 删除换行符(多行内容在一行显示)&删除空行的主要内容,如果未能解决你的问题,请参考以下文章

更新完毕Linux命令行与Shell脚本编程大全(第3版)读书笔记21-26章

将多行查询粘贴到 BigQuery SQL shell

Linux shell:去除换行符的 Base64 解码

putty里删除替换多行(整段)

《Linux命令行与shell脚本编程大全》第二十一章 sed进阶

sed多行模板替换