sed用法预习总结

SED用法
sed:Stream EDitor
    行编辑器

sed:模式空间
     默认不编辑原文件,仅对模式空间的数据做处理,将处理后的结果输出至屏幕

sed [options] 'AdressCommand' file…

    OPTIONS
       -n:静默模式,不再默认显示模式空间中的内容
       -i:直接修改原文件
       -e SCRIPT -e SCRIPT…:可以同时执行多个脚本
       -f /PATH/TO/SED_SCRIPT:指定脚本文件
       -r:使用扩展正则表达式

   Adress:
     1、Startline,Endline
        1,100
        $:最后一行
        $-1:倒数第二行
     2、/RegExp/
        /^root/
     3、/pattern1/,/pattern2/
        第一次被pattern1匹配到的行开始,至第一次被pattern2匹配到的行结束,之间的所有行
     4、LineNumber
        指定的行
     5、StartLine,+N
        从指定行开始,向后的N行

    Command:
      d:删除符合条件的行
         eg:sed '1,$-2d' /etc/fstab
             sed '/oot/d' /etc/fstab
             sed '1,$-2d' /etc/fstab
             sed '1d' /etc/fstab
             sed '1,+2d' /etc/fstab

      p:显示符合条件的行
         eg:sed -n '/^\//p' /etc/fstab

      a \string:在指定的行后面追加新行,内容为“string”
         eg:sed '/^\//a \hello body' /etc/fstab
             sed '/^\//a \hello body\nhello baby' /etc/fsbat

      i \string:在指定的行前面追加新行,内容为“string”
         eg:sed '/^\//i \hello body' /etc/fstab
             sed '/^\//i \hello body\nhello baby' /etc/fsbat

      r FILE:将指定的文件内容添加至符合条件的行后
         eg:sed '2r file' /etc/fstab
             sed '1,2r file' /etc/fstab

      w FILE:将地址指定的范围内的行另存至指定的文件中
         eg:sed '2w file' /etc/fstab
             sed '1,2w file' /etc/fstab

      s/pattern(可用正则表达式)/string/修饰符:查找并替换
         默认替换每行中第一次被模式匹配到的字符串
         分隔符可替换:s###   s@@@
         当分隔符与查找条件相同时可将其替换,避免使用转义符

         修饰符:
         g:全局替换
         i:忽略字符大小写

原创文章,作者:Mr.Lee,如若转载,请注明出处:http://www.178linux.com/31701

(0)
上一篇 2016-08-10 10:27
下一篇 2016-08-10 10:28

相关推荐

  • shell的基本使用

    小知识: 在bash环境中变量有各自的范围,有些的变量无法超出自己本身的范围,也无法更改自己, 或提升自己的能力范围 用source命令执行脚本,会对里面的变量发生改变包括范围 例:命令行中写name=wang 脚本中写name=xdg  先命令行,再脚本,最后命令行的顺序依次执行 1.正常的执行脚本 ./file.sh  输出的结果: …

    Linux干货 2017-08-05
  • 关于shell脚本编程基础第三篇

                          关于shell脚本编程基础第三篇   本章主要内容:循环的特殊用法;while;for;select 循环与菜单       &nbsp…

    系统运维 2016-08-21
  • N23 9月底的

    1.linux下文件管理命令 cat 读取文件 或者连接显示touch 建立文件 改变时间 cp 复制文件 -f 强制复制 不论覆盖-r 连同子目录递归处理-l 建立硬链接-s 建立符号连接 rm 删除文件 -r 递归删除 连同子目录也一起干掉-f 强制 删除文件或者目录-d 直接删除目录 file 辨识文件类型 find 查找文件 whereis 查找文件…

    Linux干货 2016-09-25
  • 交互式与非交互式的区别

    交互式与非交互式shell /登录shell于非登录shell 外网连不上,教室装修太吵,相关资料找不到,云云不知所云,托托症又犯了 登录shell_非登录shell // .bash_profile .bashrc profile 文件的作用的执行顺序 http://blog.csdn.net/robertaqi/archive/2010/04/04/54…

    Linux干货 2017-06-11
  • 权限管理

     权限管理:  ls -l       rwxrwxrwx:              左三位:定义user(owner)的权限              中三位:定义g…

    Linux干货 2016-12-21
  • 马哥教育网络班22期+第9周课程练习

    week9: 1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin); 分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # SHELL1="/sbin/nologin" declare -i sum1=sum2=0 for&nb…

    Linux干货 2016-10-17