国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 操作系統 > 正文

sed基本用法整理

2024-06-28 16:02:44
字體:
來源:轉載
供稿:網友

sed基礎用法整理

sed: Stream Editor 行編輯器

用法:

         sed [Options] ‘AddressCommand’ file…

常用參數:

         -n:靜默模式,不顯示未操作行,默認會將未操作的行顯示。

         -i:直接修改源文件,默認情況下,sed的操作不會對源文件有任何影響,只會將結果顯示到顯示器。

         -e script:script為sed相關操作,同時執行多個操作,每個-e后,跟一個操作

         -f FILE:FIEL指的是某一文件的路徑(絕對,相對均可),將操作保存至文件中,一行一個操作,此方法可以同時執行多個操作。

         -r:使用擴展的正則表達式。

Address:

         1.  startline , endline:需要操作的文件內容范圍,以行來界定,用$來表示最后一行

         2.  /RegExp/:正則表達式

         3.  /Pattern1/ , /Pattern2/:第一次被Pattern1匹配到的行開始至第一次被Pattern2匹配到的行之間的行

         4.  LineNumber:精確指定某一行

         5.  Startline,+#:#指的是某一非負整數,從指定行開始至其后的#行

Command:

        1.  d:刪除匹配到的行

        2.  p:打印顯示符合條件的行

        3.  a /string:在指定行后添加string行,如果需要加多行,可使用/n來換行

        4.  i /string:在指定行前添加string行,用法同3

        5.  r FILE:FIEL指的是某一文件的路徑(絕對,相對均可),將指定的文件內容添加至符合條件的行后

        6.  W FILE:FIEL指的是某一文件的路徑(絕對,相對均可),將指定范圍的內容保存至文件FILE中

        7.  s/Pattern/string/:查找匹配的子串,并替換string,默認只替換每行中第一次被匹配到的串

                s/Pattern/string/g:全局替換,只要匹配到,就替換

                s/Pattern/string/i:忽略大小寫

                注:這里的“/”分割線并非固定,也可使用#,@等,但須保證三分割符相同

例子:

1.  使用sed顯示/etc/passwd中的第一行,最后一行,五至十行

命令:

顯示第一行: [root@localhost~]# sed -n '1p' /etc/passwd

        顯示最后一行:[root@localhost~]# sed -n '$p' /etc/passwd

         顯示五至十行: [root@localhost~]# sed -n '5,10p' /etc/passwd或

                                        [root@localhost ~]# sed -n '5,+5p'/etc/passwd

結果如圖:

              

2.  刪除/boot/grub2/grub.cfg文件中的行首的空白

命令:

                  [root@localhost ~]# sed 's/^[[:space:]]*//' /boot/grub2/grub.cfg

結果:

              

3.  刪除/boot/grub2/grub.cfg文件中的行首的空白行

命令:

                [root@localhost ~]# sed '/^$/d' /boot/grub2/grub.cfg

結果:

4.  刪除/etc/inittab行首的#號

命令:

                [root@localhost ~]# sed 's/^#//g' /etc/inittab

結果:

5.  刪除/etc/inittab行首的#號,但要求其后必須包含空格

命令:

               [root@localhost ~]# sed -r 's@^#[[:space:]]+@@g' /etc/inittab

結果:

6.  取出路徑/etc/ssh/中的etc子串

命令:

              [root@localhost ~]# echo /etc/ssh/ | sed -r 's@/(.*)/[^/]+/@/1@g'

結果:


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 尼勒克县| 鱼台县| 内乡县| 临澧县| 盐城市| 麦盖提县| 海丰县| 灵武市| 湖南省| 华池县| 桃园县| 锡林郭勒盟| 门头沟区| 长岭县| 盖州市| 乌鲁木齐县| 保亭| 仁寿县| 武宁县| 遂昌县| 尉犁县| 绍兴县| 嘉黎县| 彭泽县| 水富县| 凤山县| 屏东县| 博野县| 衡阳市| 台江县| 兴和县| 扶绥县| 纳雍县| 贡觉县| 梧州市| 北辰区| 南汇区| 延边| 延边| 屏山县| 沈丘县|