6. 行下追加 ,行上新增 ,替換整行
sed 流式編輯器,可以對文件進行非互動式增刪改
查,逐行處理
1,前置指令 | sed 選項 定址符 指令
2,sed 選項 定址符 指令 被處理文件
選項 -n 遮蔽預設輸出 -i寫入檔案 -r支援擴充套件正則
指令 p輸出 d刪除 s替換
sed -n '1p' user //輸出第1行
sed -n '2p' user //輸出第2行
sed -n '3p' user //輸出第3行
sed -n '2,4p' user //輸出第2~4行
sed -n '2,+1p' user //輸出第2行以及後面1行
sed -n '2p;4p' user //輸出第2行,第4行
sed -n '/^root/p' user //在sed中使用正規表示式輸出以root開頭的行
sed -n '$p' user //檢視最後一行
sed -n '1!p' user //檢視除了第1行以外的行, !代表取反
sed -n '=' user //檢視所有行號
sed -n '$=' user //檢視最後一行的行號,相當於檢視文件
總共有幾行
sed
'1d' user //刪第1行
sed'd' user //刪所有
sed'3d' user //刪第3行
sed'2,5d' user //刪2~5行
sed'4,+2d' user //刪4行以及後面2行
sed'1d;3d' user //刪第1行,第3行
sed'$d' user //刪除最後一行
vim test.txt //準備素材,寫入下列內容
2017 2011 2018
2017 2017 2024
2017 2017 2017
sed's/2017/8888/' test.txt //替換所有行的第1個2017為8888
sed'1s/2017/8888/' test.txt //替換第1行的第1個2017
sed'2s/2017/8888/' test.txt //替換第2行
sed'1,2s/2017/8888/' test.txt //替換1~2行
sed's/2017/8888/2' test.txt //替換所有行的第2個2017
sed's/2017/8888/3' test.txt //替換所有行的第3個2017
sed'/2011/s/2017/8888/' test.txt //替換有2011的行的第1個2017
sed's/2017/8888/g' test.txt //替換所有行的所有個
sed'3s/2017/8888/;3s/2017/8888/' test.txt //替換第3行的第1個和第2個2017
注意事項:可以更改替換的間隔符號
例如:sed 『s!/bin/bash!/sbin/sh!』 /etc/passwd
將 /etc/passwd中的/bin/bash替換成/sbin/sh
1.刪除檔案中每行的第二個、最後乙個字元
sed
's/.//2;s/.$//' test.txt
2.刪除檔案中所有的數字sed -i 's/[0-9]//g' test.txt
3.將檔案中每行的第乙個、倒數第1個字元互換echo abcdefghi > abc
sed -r 's/^(.)(.*)(.)$/\3\2\1/' abc
4.為檔案中每個大寫字母新增括號echo qwdqdgjdksdhtth >
test
sed -r 's/([a-z])/(\1)/g'
test
sed
'a 666' user //在所有行下追加666
sed'1a 666' user //第1行下追加666
sed'i 666' user //所有行上新增666
sed'3i 666' user //第3行上新增666
sed'2a 666' user //第2行下追加666
sed'c 666' user //所有行替換成666
sed'/root/c 666' user //找到有root的行替換成666
Linux三劍客之sed實戰
sed是linux中一種流編輯器,是文字處理非常有力的工具,支援將資料進行替換 刪除 新增 選取等功能。首先將決定選取哪些行進行編輯,規則可以是數字 正規表示式等,若沒有限制,則將處理輸入檔案的所有行。在處理時,將當前行儲存在臨時快取區中,稱為 模式空間 然後使用sed指令處理緩衝區的內容,處理成功...
八 Linux三劍客之sed
處理文字檔案的命令 引數說明 動作說明 c 取代,c 的後面可以接字串,這些字串可以取代 n1,n2 之間的行!d 刪除,d 後面通常不接任何字串 p 列印,將某個選擇的資料印出。通常 p 會與引數 sed n 一起使用 s 取代,搭配正規使用,例如 1,20s old new g 案例在testf...
Linux 文字三劍客之 sed
linux 系統中一切皆檔案。檔案是個文字。可以讀 可以寫,如果是二進位制檔案,還能執行。在使用linux的時候,大都是要和各式各樣檔案打交道。熟悉文字的讀取 編輯 篩選就是linux系統管理員的必備技能 文字處理工具 grep awk sed,本篇主要講sed sed行編輯命令。用來將資料進行選取...