sed簡單用法

2022-09-16 12:09:09 字數 1884 閱讀 1811

引數說明:

-e 以指定的script來處理輸入的文字檔案

-f 以指定的script檔案來處理輸入的文字檔案

-h 顯示幫助

-n 僅顯示script處理後的結果

-v 顯示版本資訊

-v 反選

動作說明:

a 新增,後面跟字串,插入在指定行的下一行

c 取代,後面跟字串,可以取代n1,n2之間的行

d 刪除

i 插入,後面跟字串,插入在指定行的上一行

p 列印

s 取代

1.新增行

sed -e 4a\newline text.file

sed '3a hello wold' text.txt

sed ''

1.列印某行 sed -n 'n'p filename

2.列印多行 sed -n '1,$'p filename

3.列印包含某個字串的行 sed -n '/root/'p text.txt

特殊字元^ $ . *也能在sed中使用

sed -n '/^i/'p text.txt 列印以i開頭的行

sed -n '/in$/'p text.txt 列印以in結尾的行

sed -n '/r..o/'p text.txt 列印包含r..o的行。中間2個為任意字元

sed -n '/ooo*/'p text.txt 列印oo ooo...的行。最少匹配oo

4.實現多個行為 -e 

sed -e '1'p -e '/111/'p -n text.txt

5.刪除某行或這多行 d刪除

sed '1'd text.txt

sed '1,3'd text.txt

sed '2,$'d text.txt

sed '/oot/' text.txt

6.替換字串或字元

s替換   g 全域性替換,不加只替換每行的第乙個

除了/,還可以使用其他的特殊字元如# @

sed '2,4s/ot/to/g' text.txt 將第2行到第4行的ot替換為to

sed 's#ot#to#g' text.txt 

sed 's/[0-9]//g' text.txt 刪除所有的數字

sed 's/[a-za-z]//g' text.txt 刪除所有的字母

sed 's/[0-9a-za-z]//g' text.txt 刪除所有的數字和字母

7.調換2個字元的位置

head -n 10 text.txt|sed 's/\(root\)\(.*\)\(rcu_gp_kth\)/\3\2\1/'

替換前

8.增加字串

sed 's/^.*$/123&/' text.txt|head -n 10 在每一行的前面加上123

9.直接替換

sed -i 's/:/#/g' text.txt

mac下直接替換一直報錯,解決方法:

1. sed -ig 's/456/hello/g' text2.txt

sed 's/456/hello/g' text2.txt > text3.txt 

參考:

sed簡單用法

一 替換 1 將替換後的文字顯示在螢幕上 1 sed s pattern replace string file 或者通過管道 1 catfile sed s pattern replace string 2 替換原始檔中的文字 1 sed s pattern replace string g fi...

mysql的簡單用法 mysql簡單用法

刪除使用者 drop user jack drop比delete刪除的優勢在於drop可以刪除使用者的許可權,更加徹底 更改使用者名稱 rename user jack to jacknew 使用者的都存在與user表中,更改名稱,許可權不變 更改使用者密碼 update mysql.user se...

oracle cursor 簡單用法

procedure changespecialdiscount compid in invarchar2 ccid in invarchar2 cono in invarchar2 is sum cc all number 14 4 0 wsp disc number 14 4 wspcl disc...