在多个文件中查找并替换SSH命令?

时间:2012-01-09 17:11:45

标签: ssh command

因此,此命令将在目录tmp

中的file.txt中用XYZ替换abc
  

sed -ie's / abc / XYZ / g'/tmp/file.txt

如何在一站式扩展.html目录中的大量文件中进行这样的查找和替换?

1 个答案:

答案 0 :(得分:4)

find /start/path -name *.html -exec sed -ie 's/abc/XYZ/g' '{}' \;

根据您的要求,以下是它的作用:

find /start/path -name *.html

从/ start / path

开始查找所有以* .html为格式的文件

-exec选项告诉find,不仅要打印出文件,还要对它们运行命令。在此命令中{}由文件替换。 -exec选项以分号结束,我们必须用反斜杠转义,否则bash会吞下它。

再次,从OP的特殊情况:将以下内容放入名为replaceabc.sh

的文件中
#!/bin/bash
find '/home/129224/domains/sandpit.uk-cpi.com/html/sshit' -name '*.html' -exec sed -ie 's/abc/XYZ/g' '{}' \;

然后从shell提示符

chmod 700 /path/to/replaceabc.sh
/path/to/replaceabc.sh