替换不同文件夹shell脚本中存在的文件中的一行

时间:2017-11-30 05:22:56

标签: shell sed

我在不同文件夹中存在不同文件中的公共行。如何在文件夹的所有文件中使用shell script sed命令将该行替换为其他行?

例如:t =“/ home / file.txt”出现在文件夹中的一个文件中 同一行存在于不同文件夹的不同文件中

我必须用 t =“/ desk / file1.txt”替换它。那么我在哪里可以执行sed命令是否在文件夹外?

1 个答案:

答案 0 :(得分:0)

find . -type f -exec sed -i 's/strng1/string2/g' {} +

string1 将替换为 string2 。它将替换当前目录及其所有子目录中的所有文件。您需要从父目录

运行此脚本

如果您想同时使用 GNU BSD / Mac ,请使用此

 find . -type f -exec sed -i.bak 's/strng1/string2/g' {} +