sed 命令給指定文件的某行添加特定字符


一、需求:需要給某個機器的某個文件的指定行添加一些 字符

二、處理過程:

1.某行字符較少的話可以使用替換的方法,如下:

$ sed -i.bak '10 s#netmask#aaaaaaaaaaaa#' file 

 表示對第10行 進行替換

2.某行字符太長的話,使用sed 命令可以實現指定行添加一些 字符,如下:

$ sed -i.bak '124 s/^.\{20\}/&or 10.10.10.10 /g'  file             # or 10.10.10.10 是一個整體

$ sed -i.bak ' /^line1/,/^line3/,s/^.\{20\}/&welcome to china /g' file

解釋一下這個命令的參數:
a、-i.bak 表示直接對原文件進行編輯的同時做備份;
b、/^line1/,/^line3/表示以line1開頭的行,到以line3開頭的行之間的范圍進行操作;
3、s###是替換一次。s###g 是符合條件的都替換(#是分隔符號,可以使用任意的特殊符號,如+  / @  等等,),^.\{20\}是從開頭的第一個字符到第20個字符,&代表在后方添加,后面的welcome to china就是添加的字符;
4、file 表示要處理的文件名。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM