sed經常使用命令spa
1.把開頭/結尾爲str1的行替換爲str2: code
sed -i 's/^str1.*/str2/' filename ###以str1開頭 sed -i 's/.*str1$/str2/' filename ###以str1結尾 sed -i 's/.*str1.*/str2/' filename ###含有str1
2.將文件中含 "arr" 字符串的數據行中的 "str1" 字符串 , 替換成爲 "str2" 字符串:blog
sed -e '/arr/s/str1/str2/g' filename ##含有g說明是全局替換
3.將文件中第 5 行數據 , 替換成句子"hello world!!!"文檔
sed -e '5c\hello world!!!' filename
4.將文件中 1 至 100 行 , 替換成以下兩行:字符串
how are you?
my name is feige.
命令以下:get
sed -e '1,100c\ How are you?\ my name is feige. ' filename
5. 刪除空行:class
sed -e '/^ *$/d' filename ### *號前面有一個空格符哦~
sed '/^$/d' file
6. 刪除含有指定字符串str的行:sed
sed -f '/str/d' filename
7. 將文件中的前 100 數據 , 搬到文件中第 300 後輸出。其命令以下:file
sed -f mov.txt targetfile ## targetfile是要操做的文件,mov.txt裏面放的是操做指令
其中mov.txt文檔的內容爲:grep
1,100{ H d } 300G
8. 將from.txt文件中含 "phi" 字符串的數據行 , 移動到to.txt文件中儲存。其命令以下:
sed -e '/phi/w to.txt' from.txt
9. 將 from.txt文件內容 , 移動至to.txt文件中含 "beta" 字符串的數據行。其命令以下:
sed -e '/beta/r from.txt' to.txt
10. 將文件中含 "omega" 字符串的數據輸出:
sed -f grep.txt targetfile
其中grep.txt的內容以下:
/omega/b N h s/.*\n// /omega/b g D
11. 將當前目錄下包含jack串的文件中,jack字符串替換爲tom
sed -i "s/jack/tom/g" `grep "jack" -rl ./`