一、需求:需要給某個機器的某個文件的指定行添加一些 字符
二、處理過程:
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 表示要處理的文件名。