(1) SED 做用linux
sed 是一個非交互式的文本編輯器, 對比Vi(vim) 是一個交互式的編輯器web
(2) SED 語法vim
sed [-option] [command] files編輯器
註釋:ide
sed 工具默認處理文本,文本內容輸出屏幕已經修改,可是文件內容其實沒有修改, 須要加i 參數完全修改工具
(3) SED實戰spa
SED 實戰替換文本.net
<1> jfedu.txt文件中,將文件中全部的old,替換爲new3d
sed 's/old/new/g' jfedu.txtit
<2> jfedu.txt文件中,將http://www.jd.com替換爲 http://www.baidu.com
sed 's#http://www.jd.com#http://www.baidu.com#g' jfedu.txt
SED 實戰打印文本
<1> jfedu.txt文件中,打印第一行
sed -n '1p' jfedu.txt
<2> jfedu.txt文件中,打印1到3行
sed -n '1,3p' jfedu.txt
<3> jfedu.txt文件中,打印最後一行
sed -n '$p' jfedu.txt
<4> jfedu.txt文件中,打印第一行與最後一行
sed -n '1p;$p' jfedu.txt
<5> jfedu.txt 文件中,打印第一行到最後一行
sed -n '1,$p' jfedu.txt
<6> jfedu.txt文件中,打印/linux/這一行
sed -n '/linux/p' jfedu.txt
<7> jfedu.txt文件中,打印第一行與最後一行(用-e這個擴展參數實現)
sed -n '1p' -e '$p' jfedu.txt
<8> jfedu.txt文件中,匹配/linux/這一行和/test/這一行,打印出來
sed -n '/linux/,/test/p' jfedu.txt
<9> jfedu.txt文件中,匹配/linux/這一行到最後一行,打印出來
sed -n '/linux/,$p' jfedu.txt
SED實戰刪除文本
<1> jfedu.txt文件中,刪除第一行到第3行
sed '1,3d' jfedu.txt
<2> jfedu.txt文件中,刪除linux匹配行到最後一行
sed '/linux/,$d' jfedu.txt
SED實戰插入文本
<1> jfedu.txt文件中,查找/linux/這一行,並在下一行添加word字符
sed '/linux/aword' jfedu.txt
<2> jfedu.txt文件中, 查找/linux/這一行,並在上一行添加word字符
sed '/linux/iword' jfedu.txt
<3> jfedu.txt文件中, 查找/linux/這一行,在上一行添加word字符,在下一行添加word字符
sed -e '/linux/aword' -e '/linux/iword/' jfedu.txt
<4> jfedu.txt文件中,查找以test結尾的行,並在其行尾添加word字符
sed 's/test$/&word/g' jfedu.txt
<5> jfedu.txt文件中, 查找/www/所在行,在其行行首添加word字符
sed 'www/s/^/&word/g' jfedu.txt
<6> jfedu.txt文件中,查找以com結尾的行,在行尾添加. 查找/mpt/所在行,在其行首添加.
sed -e 's/com$/&./g' -e '/mpt/s/^/&./g' jfedu.txt
<7> 用sed打印根
sed -n 's/\//p'
<8> sed 讀取變量,並進行替換
website=www.jfedu.net
sed ''s/www.jd.com/$website/g'' jfedu.net