真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

sed命令細(xì)說(shuō)

sed:

創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿(mǎn)足客戶(hù)于互聯(lián)網(wǎng)時(shí)代的歷下網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!

      工作方式:此命令也是針對(duì)文檔行的一個(gè)命令。他的工作方式同grep一樣,工作目標(biāo)是文檔中的行,一樣是把文檔復(fù)制到他的內(nèi)存中進(jìn)行操作,只要用戶(hù)不保存,就不會(huì)改變?cè)募?/p>

       磁盤(pán)源文件=A地-->復(fù)制到內(nèi)存中的源文件或部分原文件=B地--->操作、篩選或者編輯后的保存在內(nèi)存中的文件=C地

      常用選項(xiàng):

       -n:表示不再輸出不符合從B地道C地的內(nèi)容

       -e:可以同時(shí)使用多個(gè)編輯指令對(duì)B地的內(nèi)容進(jìn)行編輯、篩選、造作

       -f: 后邊可以跟一個(gè)腳本文件,此腳本文件每行都是一個(gè)編輯命令

        -r:  支持使用擴(kuò)展正則表達(dá)式

       -i : 表示直接對(duì)原文件進(jìn)行編輯,此選項(xiàng)比較危險(xiǎn)哦

        地址定界:及表示我們要對(duì)那些行進(jìn)行編輯

         1): 不給地址,即空地址。 則表示對(duì)全文進(jìn)行處理

         2):?jiǎn)蔚刂?/p>

                #:制定行

         3): 一個(gè)范圍

              #,#:

              #。+#:

              /pat1/,/part2/

          4) 步進(jìn):-

               1-2:表示所有的奇數(shù)行

                2-2:表示所有的偶數(shù)行

          sed 常用編輯選項(xiàng)

              d : 刪除  即刪除“B地”的內(nèi)容

                 sed  '1,5d' /etc/fstab  表示刪除1行和5行的內(nèi)容

                 sed  '/^UUID/d' /etc/fstab  表示刪除以UUID開(kāi)頭的每一行

                 sed  '3d' /etc/fstab      表示刪除第三行

                 sed '1-2d' /etc/fstab  表示顯示偶數(shù)行(因?yàn)槠鏀?shù)行被刪除了)

             p:表示顯示“B地”的內(nèi)容

                  sed  '1~2p'  /etc/fstab    表示奇數(shù)行顯示兩遍

                  sed  -n '1~2p' /etc/fstab   表示只顯示奇數(shù)行  -n的意思是只保留編輯的行為

             a\text:指定的模式匹配到的行的后邊追加“text",支持使用\n這個(gè)符號(hào),實(shí)現(xiàn)多行追加

             i\text:在指定的模式匹配到的行前邊插入"text",支持使用\n這個(gè)符號(hào),實(shí)現(xiàn)多行追加

               例如: sed '5i \do it yourself' /etc/fstab   (我把fstab第一行的空格刪除了所以是下邊的效果)                  

#
# /etc/fstab
# Created by anaconda on Wed Dec 30 06:43:45 2015
#
do it yourself
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

  sed '5a \do it yourself' /etc/fstab

#
# /etc/fstab
# Created by anaconda on Wed Dec 30 06:43:45 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
do it yourself
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

 如果想在多行下邊或者上邊插入信息,可以用下操作

sed '/UUID/a \#I will do my best.' /etc/fstab

#
# /etc/fstab
# Created by anaconda on Wed Dec 30 06:43:45 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=42725ac6-787d-4be4-a766-a4b9325eba7e /                       ext4    defaults        1 1
#I will do my best.
UUID=ec7cf699-9e55-4305-a463-859f8ba83f3b /boot                   ext4    defaults        1 2
#I will do my best.
UUID=52937bf3-72c9-48d7-a05c-72726731c995 swap                    swap    defaults        0 0
#I will do my best.

 可以看出/UUID/=5

               c \text:把匹配到的行替換為此處指定的文本"text' 注意:是正行替換,不是只替換某個(gè)字符。

 例如:

sed '/UUID/c \#I will do my best.' /etc/fstab

#
# /etc/fstab
# Created by anaconda on Wed Dec 30 06:43:45 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
#I will do my best.
#I will do my best.
#I will do my best.

            w /PATH/TO/FILE: 把挑選出來(lái)的行保存到一個(gè)路徑下,例如“把不是#號(hào)開(kāi)頭的行保存到/tmp/temp里去

  sed -n '/^[^#]/w  /tmp/temp/new.xx'  /etc/fstab

  

[root@marco-linux temp]# cd /tmp/temp
[root@marco-linux temp]# ls
etc  files6  new.xx  passwd1  passwd2  passwd3
[root@marco-linux temp]# cat new.xx
UUID=42725ac6-787d-4be4-a766-a4b9325eba7e /                       ext4    defaults        1 1
UUID=ec7cf699-9e55-4305-a463-859f8ba83f3b /boot                   ext4    defaults        1 2
UUID=52937bf3-72c9-48d7-a05c-72726731c995 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

            r /PATH/FROM/SOMEFILE: 合并文件用的~! 此選項(xiàng)的意思是把另外一個(gè)文件讀取后存放在sed目標(biāo)文件制定的行處 例如我們把/etc/isssue文件讀取出來(lái)放在fstab文件的第三行下邊

sed '3r /etc/issue' /etc/fstab 

#
# /etc/fstab
CentOS release 6.7 (Final)
Kernel \r on an \m
# Created by anaconda on Wed Dec 30 06:43:45 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=42725ac6-787d-4be4-a766-a4b9325eba7e /                       ext4    defaults        1 1
UUID=ec7cf699-9e55-4305-a463-859f8ba83f3b /boot                   ext4    defaults        1 2
UUID=52937bf3-72c9-48d7-a05c-72726731c995 swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0

             = :為每一個(gè)能匹配到的行加一個(gè)行號(hào) 使用方法:sed '/^UUID/= ' /etc/fstab 

9
UUID=42725ac6-787d-4be4-a766-a4b9325eba7e /                       ext4    defaults        1 1
10
UUID=ec7cf699-9e55-4305-a463-859f8ba83f3b /boot                   ext4    defaults        1 2
11
UUID=52937bf3-72c9-48d7-a05c-72726731c995 swap                    swap    defaults        0 0

        !  : 表示取反  例如”fstab文件中刪除所有以不是#開(kāi)頭的行。

               sed  '/^#/!d' /etc/fstab

#
# /etc/fstab
# Created by anaconda on Wed Dec 30 06:43:45 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#

         s///:查找替換,其分隔符可以自行指定,比如s$$$ s@@@@ 等

              替換標(biāo)記:

                 g:全局替換

                 w: /PATH/TO/IILE : 將替換成功的結(jié)果保存到指定的文件中

                 p:顯示替換成功的行

           例如: sed 's@^[[:space:]]@@' /PATH/TO/FILE  后兩個(gè)@@之間表示為空

   sed 就說(shuō)這些把。。祝你學(xué)習(xí)愉快,也祝我學(xué)習(xí)愉快


網(wǎng)頁(yè)名稱(chēng):sed命令細(xì)說(shuō)
文章位置:http://weahome.cn/article/jsdoje.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部