Linux 刪除和替換檔案中某一行的方法

2021-08-30 13:46:50 字數 2037 閱讀 6732

如果有乙個abc.txt檔案,內容是:

aaa

bbbbatbusinesstype, insideid--) online;

insideid--) online

cccddd

eeefff

如果要刪除ddd,那麼指令碼可以這樣寫:

sed -i '/ddd/d' abc.txt

如果刪除的是乙個變數的值,假如變數是var,應該寫成:

sed -i '/'"$var"'/d' abc.txt

至於grep -v aaa abc.txt這個方法,是無法將修改的結果寫入abc.txt中去的。?

[asp@bj-cp-7f-106-36 result]$cat11371_mobile_20110425.csv

20110425,北京,北京,13661189983

20110425,北京,北京,15810705979

wapsjbbi_101>

wapsjbbi_101>spooloff;

[asp@bj-cp-7f-106-36 result]$sed-i'/wapsjbbi_101>/d'11371_mobile_20110425.csv

[asp@bj-cp-7f-106-36 result]$cat11371_mobile_20110425.csv

20110425,北京,北京,13661189983

20110425,北京,北京,15810705979

2行都刪了

刪除:d命令

$ sed '2d' example-----刪除example檔案的第二行。

$ sed '2,$d' example-----刪除example檔案的第二行到末尾所有行。

$ sed '$d' example-----刪除example檔案的最後一行。

$ sed '/test/'d example-----刪除example檔案所有包含test的行。

在看看以前我常寫的sed 's/|/,/g' aaa.txt>bbb.txt 這個的意思就是把aaa.txt檔案中所有字串|都換成,這是怎麼表示的呢?s代表字串,g表示行內全面替換。 

替換:s命令

$ sed 's/test/mytest/g' example

-----在整行範圍內把test替換為mytest。如果沒有g標記,則只有每行第乙個匹配的test被替換成mytest。

$ sed -n 's/^test/mytest/p' example

-----(-n)選項和p標誌一起使用表示只列印那些發生替換的行。也就是說,如果某一行開頭的test被替換成mytest,就列印它。

$ sed 's/^192.168.0.1/&localhost/' example

-----&符號表示替換換字串中被找到的部份。所有以192.168.0.1開頭的行都會被替換成它自已加 localhost,變成192.168.0.1localhost。

$ sed -n 's/able/\1rs/p' example

-----love被標記為1,所有loveable會被替換成lovers,而且替換的行會被列印出來。

$ sed 's#10#100#g' example

-----不論什麼字元,緊跟著s命令的都被認為是新的分隔符,所以,「#」在這裡是分隔符,代替了預設的「/」分隔符。表示把所有10替換成100。

cat init.ora | grep -v  ^#|grep –v ^*  > initprod.ora

Linux 刪除和替換檔案中某一行的方法

如果有乙個abc.txt檔案,內容是 aaabbb batbusinesstype,insideid online insideid online cccddd eeefff 如果要刪除ddd,那麼指令碼可以這樣寫 sed i ddd d abc.txt 如果刪除的是乙個變數的值,假如變數是var,...

Linux 刪除和替換檔案中某一行的方法 推薦

如果有乙個abc.txt檔案,內容是 aaabbbbatbusinesstype,insideid online insideid online cccddd eeefff 如果要刪除ddd,那麼指令碼可以這樣寫 sed i ddd d abc.txt 如果刪除的是乙個變數的值,假如變數是var,應...

Shell 指令碼逐行替換檔案中的某一引數值

替換檔案中的某個引數,通常使用linux文字處理工具,awk sed 和 grep,可根據實際需要組合使用命令。bin bash 獲取檔案,通過指令碼引數引入 file data test.log 獲取檔案的行數 log line awk f file 定義迴圈規則,檔案有多少行,就迴圈多少次 fo...