首页 > 代码库 > linux shell 删除换行符(多行内容在一行显示)&删除空行

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 删除换行符(多行内容在一行显示)&删除空行