Linux找到并替换

Sub*_*jee 14 linux shell

我怎么能代替"abc""abcd"上使用shell文件夹中的所有文件?

是否可以使用sed命令?

小智 35

对文件file.txt尝试以下命令:

sed -i 's/abc/abcd/g' file.txt
Run Code Online (Sandbox Code Playgroud)


对当前文件夹中的所有文件尝试以下命令:

find . -maxdepth 1 -type f -exec sed -i 's/abc/abcd/g' {} \;
Run Code Online (Sandbox Code Playgroud)

对于当前目录和所有子目录中的文件:

find . -type f -exec sed -i 's/abc/abcd/g' {} \;
Run Code Online (Sandbox Code Playgroud)

或者如果你是xargs的粉丝:

find . -type f  | xargs -I {}  sed -i 's/abc/abcd/g' {}
Run Code Online (Sandbox Code Playgroud)