sed命令下批量替換文件內容 spa
格式: sed -i "s/查找字段/替換字段/g" `grep 查找字段 -rl 路徑` 文件名字符串
-i 表示inplace edit,就地修改文件string
-r 表示搜索子目錄it
-l 表示輸出匹配的文件名
s表示替換,d表示刪除class
示例:sed -i "s/shan/hua/g" lishan.txt變量
把當前目錄下lishan.txt裏的shan都替換爲huased
sed的其餘用法以下:file
一、刪除行首空格
sed 's/^[ ]*//g' filename
sed 's/^ *//g' filename
sed 's/^[[:space:]]*//g' filename搜索
二、行後和行前添加新行
行後:sed 's/pattern/&\n/g' filename
行前:sed 's/pattern/\n&/g' filename
&表明patterngrep
三、使用變量替換(使用雙引號)
sed -e "s/$var1/$var2/g" filename
四、在第一行前插入文本
sed -i '1 i\插入字符串' filename
五、在最後一行插入
sed -i '$ a\插入字符串' filename
六、在匹配行前插入
sed -i '/pattern/ i "插入字符串"' filename
七、在匹配行後插入
sed -i '/pattern/ a "插入字符串"' filename
八、刪除文本中空行和空格組成的行以及#號註釋的行
grep -v ^# filename | sed /^[[:space:]]*$/d | sed /^$/d
九、tr命令
tr 待替換字符串 替換字符串 < 文件名 >輸出文件
tr "\n" "," <brands >brands_new
十、替換換行
sed -i ":a;N;s/\n//g;ta" a.txt