先建立乙個檔案test
內容為:
lijie1
:one
lijie2
:two
lijie3
:three
hehe1
:one1
hehe2
:two2
hehe3
:three3
1.查詢
[root@lijie hadoop]# sed -n /lijie/p test
lijie1:one lijie2:two lijie3:three
2.對當前欄位的刪除
--匹配刪除
[root@lijie hadoop]# cat ./test | sed /lijie/d
hehe1:one1 hehe2:two2 hehe3:three3
--指定函式刪除
[root@lijie hadoop]# cat ./test | sed 2d
lijie1:one lijie2:two lijie3:three
--多行刪除(1-4行)
[root@lijie hadoop]# cat ./test | sed 1,4d
--刪除到最後
[root@lijie hadoop]# cat ./test | sed "3,$"d
3.替換
--給替換第乙個
[root@lijie hadoop]# cat test | sed s/hehe/heihei/
lijie1:one lijie2:two lijie3:three
heihei1:one1 hehe2:two2 hehe3:three3
--替換所有
[root@lijie hadoop]# cat test | sed s/hehe/heihei/g
lijie1:one lijie2:two lijie3:three
heihei1:one1 heihei2:two2 heihei3:three3
4.替換然後列印匹配行
[root@lijie hadoop]# cat test | sed -n /three3/s/hehe/heihei/gp
heihei1:one1 heihei2:two2 heihei3:three3
5.復合條件-e(把lijie換成hadoop,把匹配three3的hehe換為heihei)
[root@lijie hadoop]# cat test | sed -n -e s/lijie/hadoop/gp -e /three3/s/hehe/heihei/gp
hadoop1:one hadoop2:two hadoop3:three
heihei1:one1 heihei2:two2 heihei3:three3
6.對檔案進行修改
[root@lijie hadoop]# sed -i -n -e s/lijie/hadoop/gp -e /three3/s/hehe/heihei/gp test
[root@lijie hadoop]# cat test
hadoop1:one hadoop2:two hadoop3:three
heihei1:one1 heihei2:two2 heihei3:three3
7.將某個檔案的檔案替換到匹配的那一行後面(r和r不同)
--r
[root@lijie hadoop]# sed /hadoop/'r test1' test
hadoop1:one hadoop2:two hadoop3:three
n1n2
heihei1:one1 heihei2:two2 heihei3:three3
--r[root@lijie hadoop]# sed /hadoop/'r test1' test
hadoop1:one hadoop2:two hadoop3:three
n1heihei1:one1 heihei2:two2 heihei3:three3
hadoop4:one hadoop5:two hadoop6:three
n2hadoop7:one hadoop8:two hadoop9:three
8.追加字元a為匹配行後,i為匹配行前
hadoop1:one hadoop2:two hadoop3:three
this
heihei1:one1 heihei2:two2 heihei3:three3
this
hadoop1:one hadoop2:two hadoop3:three
heihei1:one1 heihei2:two2 heihei3:three3
9.整行替換
[root@lijie hadoop]# sed /hadoop/'c new line' test
new line
heihei1:one1 heihei2:two2 heihei3:three3
sed的基本用法
sed的工作流程 sed stream editor,流編輯器,預設對原檔案不做任何處理,僅對模式空間的資料進行處理,處理結束後,將模式空間列印至螢幕。sed逐行將檔案讀取到模式空間 記憶體 進行模式匹配,如果符合模式進行編輯 取決給的編輯命令 之後進行下一行的操作sed命令格式 sed optio...
sed 的相關用法
寫本篇部落格時,正在讀一本叫做 sed awk 的第三版書籍,這本書真的很不錯,作為一本熱門技術書籍,足以見得作者是乙個很用心的人,當然我看的是中文翻譯版的,翻譯作者同樣用心 感謝作者提供這樣優秀的書籍供熱愛技術的人們學習,感謝。說起sed,不得不說一說ed,首先來說ed類的編輯器都是基於行進行操作...
sed命令的用法
sed命令的用法 sed 的基本命令 1 替換 s命令 1.1 基本用法 如 sed s day night new 該例子將檔案 old 中的每一行第一次出現的 day 替換成 night,將結果輸出到檔案 new s 替換 命令 分割符 delimiter day 搜尋字串 night 替換字串...