6.2 bash编程 整数测试及特殊变量

6.2  linux的三大神器

  grep,sed(流编辑器),awk


sed基本用法

sed :Stream EDitor

   行编辑器(全屏编辑器:vi)


sed:模式空间

    默认不编辑原文件,仅对模式空间中的数据做处理:而后,处理

        结束后,将模式空间打印至屏幕


sed [options] 'AddressCommand' file ...

    -n:静默模式,不再默认显示模式空间里的内容


Address:

1 StartLine,EndLine

  比如1,100(从第1行到100行)

  $:最后一行


2 /REGEXP/

  比如 /^root/

      sed '/oot/d' /etc/fstab

3 /Pattern1/,/Pattern2/

  表示第一次被Pattern1匹配到的行开始,到第一次被Pattern2

      匹配到的行结束,这中间的所有行


4 LineNumber

  指定的行

  sed ‘1d’ /etc/fstab

5 StartLine,+N

  从StartLine开始,向后的N行,共N+1行

  sed '1,+2d' /etc/fstab

Command:

   d:删除符合条件的行

   p:显示符合条件的行

   a \string:在指定的行后面追加新行,内容为"string"

     \n: 可以用于换行

   i \string:在指定的行前面追加新行,内容为"string"

   r FILE:将指定的文件的内容添加至符合条件的行处

   w FILE:将地址指定范围内的行另存至指定的文件中

   s/pattern/string/修饰符:查找并替换(默认只替换每行中第一次

                     被模式匹配到的字符串)

                     加修饰符

                        g:全局替换

                        i:忽略字符大小写


sed '1,2d' /etc/fstab


sed '/^\//d' /etc/fstab


sed '/^\//a \# hello world' /etc/fstab


sed '/^\//a \# hello world\n # hello,linux' /etc/fstab


sed '2r /etc/issue' /etc/fstab


sed '/oot/w /tmp/oot.txt' /etc/fstab


sed ‘s/oot/OOT/’ /etc/fstab


sed 's/^\//#/' /etc/fstab



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章