如何在unix中使用sed替换多个文件中的字符串?

ano*_*ous 1 unix

有大约 10 个文件,即文件 a、文件 b、文件 c、...文件 j。我必须搜索所有这些文件并将字符串“xyz”替换为“abc”。最重要的是,这必须通过使用 for 循环和 sed 命令的 shell 脚本来完成。有人可以在这里提供解决方案吗

Mat*_*teo 8

使用sed

sed -i s/xyz/abc/g files
Run Code Online (Sandbox Code Playgroud)
  • -i将就地编辑文件
  • s///将指定替换(详细信息请阅读手册)
  • g每行将替换多次出现的情况

例如

sed -i s/xyz/abc/g a b c d e f g h i j
Run Code Online (Sandbox Code Playgroud)

或对于目录中的所有文件

sed -i s/xyz/abc/g *
Run Code Online (Sandbox Code Playgroud)

为什么要循环?