• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统
您的位置:首页 > 操作系统 >LINUX > linux sed命令互换包含指定关键字的行

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

作者:佚名 字体:[增加 减小] 来源:互联网 时间:2017-05-12

佚名 通过本文向大家介绍了linux sed命令,linux sed命令详解,linux中sed命令,linux下sed命令,linux sed i命令等相关知识,希望对您有所帮助,也希望大家多多支持linkedu.com

a.txt内容如下:

111
222
baidu
333
444
google
555
666
</div>

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

111
222
google
333
444
baidu
555
666
</div>

代码1:

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

代码1的执行过程:

代码2:

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

代码2的执行过程:

代码1和代码2的特点:
1、不需要事先知道baidu和google分别在第几行。
2、不管baidu和google是否相邻,都可以正常处理。
3、如果先出现google后出现baidu,命令需要相应的做调整。

</div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • linux sed命令互换包含指定关键字的行
  • Linux中文本处理命令sed的使用示例分享
  • Linux下的sed命令使用详解
  • Linux下sed命令使用全解析
  • linux之sed命令的用法

相关文章

  • 2017-05-12linux命令eval的用法讲解
  • 2017-05-12Linux系统中查杀僵尸进程的基本方法讲解
  • 2017-05-12详解Linux系统中的文件权限设置
  • 2017-05-12在Linux系统上安装配置DNS服务器的教程
  • 2017-05-12总结Linux中用于终结进程的kill和pikill及killall命令用法
  • 2017-05-12详解Linux系统中at与atq命令的用法
  • 2017-05-12Linux中获取网络信息的netstat命令的常用参数和用法
  • 2017-05-12Linux系统的dd命令使用教程
  • 2017-05-12Linux系统中tr命令删除和替换文本字符的基本用法
  • 2017-05-12简要剖析Linux系统的进程管理机制

文章分类

  • bios
  • 系统安装
  • 系统进程
  • Windows
  • LINUX
  • RedHat/Centos
  • Ubuntu/Debian
  • Fedora
  • Solaris
  • 麒麟系统
  • 红旗Linux
  • 苹果MAC
  • 注册表
  • 其它系统

最近更新的内容

    • linux系统中怎么查看cpu信息?
    • Linux系统下Git操作命令整理
    • 详解Linux系统中配置静态路由的方法
    • 初窥Linux系统中的进程管理工具SystemD
    • 六款常见的Linux操作系统推荐
    • linux块设备读写流程详解
    • Linux系统Centos没有网卡eth0配置文件的解决方法
    • Linux区分install命令和cp命令详解
    • 在Linux系统下使用TUN/TAP虚拟网卡的基本教程
    • linux系统磁盘分区及把磁盘挂载到系统中的方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有