首页IT科技linux sed命令 替换(linux sed命令互换包含指定关键字的行)

linux sed命令 替换(linux sed命令互换包含指定关键字的行)

时间2025-07-31 00:01:32分类IT科技浏览7692
导读:a.txt内容如下:...

a.txt内容如下:

交换包含baidu和包含google的行                   ,得到:

111 222 google 333 444 baidu 555 666

代码1:

sed /baidu/{:a;N;/google/!ba;s/\([^\n]*\)\n\(.*\)\n\(.*\)/\3\n\2\n\1/} a.txt

代码1的执行过程:

代码2:

sed /baidu/{:a;N;/google/{s/\(^[^\n]*\)\(.*\)\(\n\)\([^\n]*$\)/\4\2\3\1/;t};ba} a.txt

代码2的执行过程:

代码1和代码2的特点:

1                   、不需要事先知道baidu和google分别在第几行                   。

2                        、不管baidu和google是否相邻                        ,都可以正常处理                        。

3        、如果先出现google后出现baidu        ,命令需要相应的做调整        。
声明:本站所有文章               ,如无特殊说明或标注                         ,均为本站原创发布               。任何个人或组织            ,在未征得本站同意时          ,禁止复制               、盗用                         、采集            、发布本站内容到任何网站          、书籍等各类媒体平台                         。如若本站内容侵犯了原著者的合法权益                          ,可联系我们进行处理            。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
网站核心词优化的错误与解决方法(避免这些错误,让你的网站核心词优化更有成效) 苹果手机网络代理是什么(苹果系统专用网络优化工具,让你的网络速度暴增)