Linux教程:文本操作 三行合并成一行


Linux系统环境:CentOS  6.2  i686

将文本中的三行合并成一行,文本内容如图所示

CentOS

sed方法:sed 'N;N;s/\n/ /g' 123

CentOS

说明:N 追加下一个输入行到模式空间,用了两次把当前行的后两行都追加到了模式空间,即多行模式空间。让后用s将\n换行符替换成空格。最后的g是全局替换即替换所有的\n,若不加g表示只替换第一个。

awk方法:awk 'ORS=NR%3?" ":"\n"{print}' 123

CentOS

NR当前行记录数,ORS输出记录分隔符。'ORS=NR%3?" ":"\n" 为三目运算,即若NR对3取莫为0,ORS=“\n”,不为0,ORS=“”。

相关内容