Linux中sed命令功能強大,今天我們就來詳細介紹如何在Linux中使用sed命令進行替換,具體來說分為以下幾種情況:
1)如何替換第一次搜索到的內容;
2)如何在全文中替換所有能匹配的內容;
3)如何替換某一行的內容;
4)如何替換多行的內容;
5)如何將sed替換結果保存到原文中;
6)如何同時使用多個sed替換條件;
7)如何使用正則表達式。
1、替換第一次搜索到的內容,命令如下:
sed 's/要替換的內容/新的內容/' 要處理的文件
如下圖,將第一個小寫的b替換成了大寫的B。
2、在全文中替換所有能匹配的內容,命令如下:
sed 's/要替換的內容/新的內容/g' 要處理的文件
如下圖,將所有的小寫的b替換成了大寫的B。
3、替換某一行的內容,命令如下:
sed '行號c 新的內容' 要處理的文件
如下圖,將第二行內容替換成了“new test!”
4、替換多行的內容,命令如下:
sed '起始行號,終止行號c 新的內容' 要處理的文件
如下圖,將第二行到第六行內容替換成了“new test!”
5、上述這些替換命令都只是將替換的結果顯示在屏幕上,如果想替換的結果直接保存到原文中,就只需加上-i參數(shù)。如下圖所示。
sed -i 's/要替換的內容/新的內容/g' 要處理的文件
6、多個sed命令也可以用-e參數(shù)連接起來,一次性完成多個操作。如下圖,首先將小寫a替換成了大寫A,然后又將第二行內容替換成了“new test!”
7、再有,sed命令中替換與被替換的部分都允許使用正則表達式。比如,以下命令將所有數(shù)字替換成了“好的”。
sed 's/[0-9]/好的/g' testFile2.txt
注意:
在輸入Linux命令前,一定要將輸入法切換成英文半角符號狀態(tài)。從Windows電腦上復制命令到Linux Terminal中執(zhí)行時,也有可能遇到格式不正確造成的命令執(zhí)行錯誤,這時建議手動重新輸入字符,如果覺得輸入麻煩,可以只刪除命令中的空格和最后一個字符后,重新輸入空格和最后一個字符。
以上就是sed鎖定某一行數(shù)據(jù)進行替換的技巧,希望大家喜歡,請繼續(xù)關注腳本之家。
相關推薦:
linux怎么使用命令返回上一級目錄?
linux系統(tǒng)怎么使用alias創(chuàng)建命令別名?
linux系統(tǒng)怎么使用vmstat命令顯示虛擬內存狀態(tài)?