sed 字元替換命令

2021-08-14 03:28:10 字數 2070 閱讀 1071

sed 是一種幾乎包括在所有 unix 平台(包括 linux)的輕量級流編輯器。sed 主要是用來將資料進行選取、替換、刪除、新增的命令。

sed [選項] 『[動作]』 檔名

[root@localhost ~]# sed '2p' student.txt #沒有 -n 選項輸出所有內容,而且會重複,'2p' 代表列印第二行

id name gender mark

1 stu1 f

951 stu1 f

952 stu2 f

853 stu3 f

75[root@localhost ~]# sed -n '2p' student.txt #有-n 選項則列印指定行

1 stu1 f

95

[root@localhost ~]# sed 

'2d' student.txt #'2d' 代表刪除第二行內容,不修改原檔案

id name gender mark

2 stu2 f 85

3 stu3 f 75

[root@localhost ~]# sed

'2,4d' student.txt #'2,4d' 代表刪除第二行到第四行所有內容,不修改原檔案

id name gender mark

[root@localhost ~]# sed '2a hello' student.txt #在第二行後追加一行內容為 hello,不修改原檔案

id name gender mark

1 stu1 f

95hello

2 stu2 f

853 stu3 f

75[root@localhost ~]# sed '2i hello' student.txt #在第二行前插入一行內容為 hello,不修改原檔案

id name gender mark

hello

1 stu1 f

952 stu2 f

853 stu3 f

75

[root@localhost ~]# sed '4c test' student.txt #替換第四行內容為 test,不修改原檔案

id name gender mark

1 stu1 f

952 stu2 f

85test

sed 『s/舊字串/新字串/g』 檔名# g 代表替換所有字串

[root@localhost ~]# sed '4s/75/100/g' student.txt #替換第四行的 75 為 100,不修改原檔案

id name gender mark

1 stu1 f

952 stu2 f

853 stu3 f

100[root@localhost ~]# sed -i '4s/75/100/' student.txt # -i 選項會修改原檔案內容,但不再列印到螢幕

[root@localhost ~]# cat student.txt #原檔案內容已更改

id name gender mark

1 stu1 f

952 stu2 f

853 stu3 f

100

[root@localhost ~]# sed -e 's/stu1//g;s/stu3//g' student.txt #-e 執行多條語句,用分號隔開,將 stu1 和 stu3 內容替換為空,替換原檔案用 -ie,-ei 會報錯

id name gender mark1f

952 stu2 f853

f100

sed 字串替換

1.sed替換的基本語法為 sed s 原字串 替換字串 單引號裡面,s表示替換,三根斜線中間是替換的樣式,特殊字元需要使用反斜線 進行轉義。2.單引號 是沒有辦法用反斜線 轉義的,這時候只要把命令中的單引號改為雙引號就行了,格式如下 要處理的字元包含單引號 sed s 原字串包含 替換字串包含 3...

sed 字串替換

1.sed替換的基本語法為 sed s 原字串 替換字串 單引號裡面,s表示替換,三根斜線中間是替換的樣式,特殊字元需要使用反斜線 進行轉義。2.單引號 是沒有辦法用反斜線 轉義的,這時候只要把命令中的單引號改為雙引號就行了,格式如下 要處理的字元包含單引號 sed s 原字串包含 替換字串包含 3...

Linux使用sed命令替換字串教程

要替換字串,我們需要使用以下格式。sed s 替換的目標字串 替換後的字串 檔名 在下面我們替換寫為 appleo程式設計客棧rangemelon 的字串 sample.txt sed s orange orange 執行結果為 appleorangemelon 替換並輸出字串。另外,如下所示,在c...