sed多行文字處理

2021-10-03 17:07:35 字數 1451 閱讀 9867

4.1 問題

本案例要求使用sed工具來完成下列任務操作:

修改主機名配置檔案

修改hosts檔案,新增兩條對映記錄:192.168.4.5 與 svr5.tarena.com、svr5,還有119.75.217.56與www.baidu.com

4.2 方案

sed工具的多行文字處理操作:

i: 在指定的行之前插入文字

a:在指定的行之後追加文字

c:替換指定的行

4.3 步驟

基本語法格式案例:

注意:系統預設沒有a.txt檔案,需要自己建立乙個測試檔案!!!

[root@svr5 ~]# sed  '2a xx'   a.txt            //在第二行後面,追加xx

[root@svr5 ~]# sed '2i xx' a.txt //在第二行前面,插入xx

[root@svr5 ~]# sed '2c xx' a.txt //將第二行替換為xx

實現此案例需要按照如下步驟進行。

步驟一:修改主機名配置檔案

1)確認修改前的配置

[root@svr5 ~]# cat /etc/hostname

svr5.tarena.com

2)使用sed修改主機名配置所在行的內容(c整行替換)

[root@svr5 ~]# sed  '1c mysvr.tarena.com' /etc/hostname
步驟二:修改hosts檔案,新增新的記錄

1)確認修改前的配置

[root@svr5 ~]# cat /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

2)使用sed修改hosts檔案,新增兩行新紀錄(a追加)

[root@svr5 ~]# sed  -i  '$a 192.168.4.5  svr5.tarena.com svr5'  /etc/hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

::1 localhost localhost.localdomain localhost6 localhost6.localdomain6

192.168.4.5 svr5.tarena.com svr5

shell sed多行文字處理

本案例要求使用sed工具來完成下列任務操作 修改主機名配置檔案 修改hosts檔案,新增兩條對映記錄 192.168.4.5 與 svr5.tarena.com svr5,還有119.75.217.56與www.baidu.com sed工具的多行文字處理操作 i 在指定的行之前插入文字 a 在指定...

LINUX sed多行文字處理

問題 本案例要求使用sed工具來完成下列任務操作 修改主機名配置檔案 修改hosts檔案,新增兩條對映記錄 192.168.4.5 與 svr5.tarena.com svr5,還有119.75.217.56與www.baidu.com 方案sed工具的多行文字處理操作 i 在指定的行之前插入文字 ...

linux 文字處理sed

ed與sed的區別 sed是從ed發展來的,ed是針對當前行進行操作 sed是面向字元流的。sed和ed的應用定址有很大的區別。在ed中沒有指定位址的命令只影響當前行。sed遍歷檔案,每次讀取一行,這樣每行都是當前行,每行都應用這個命令,結果是sed對檔案中的每一行都應用了ed中沒有位址的命令。如s...