陈建华的个人网站

Linux sed 批量替换字符串

  • Jet Chen
  • 2017-11-13
  • 0
作者:云南 陈建华
比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做:

# sed -i “s/zhangsan/lisi/g” `grep zhangsan -rl /modules`

解释一下:

-i 表示inplace edit,就地修改文件
-r 表示搜索子目录
-l 表示输出匹配的文件名
这个命令组合很强大,要注意备份文件。

# sed ‘y/1234567890/ABCDEFGHIJ/’ test_sed
# sed ‘y/1234567890/ABCDEFGHIJ/’ filename

ABCDEFGHIJ
BCDEFGHIJA
CDEFGHIJAB
DEFGHIJABC

注意变换关系是按两个list的位置对应变换

其中:test_sed的内容是:

1234567890
2345678901
3456789012
4567890123

 

© 2023 陈建华的个人网站
Theme by Wing
  • {{ item.name }}
  • {{ item.name }}