linux 前文本前两行合并成一行

linux 前文本前两行合并成一行,第1张

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

CentOS

sed方法:sed 'NNs/\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=“”。

可以使用 sed 命令来实现将某个字符匹配的行的下一行移到上一行的 *** 作。具体步骤如下:

使用 sed 命令选择匹配某个字符的行,并将该行和下一行合并,使用 N 命令将其连接,将两行之间加上一个换行符。

其中,/某个字符/ 用于匹配含有某个字符的行,N 命令将当前行和下一行合并,s/\n// 命令将两行之间的换行符去除,p 命令将结果打印到标准输出。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/8938427.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-23
下一篇2023-04-23

发表评论

登录后才能评论

评论列表(0条)

    保存