替换很多文件中的字符串

时间:2012-02-08 16:14:49

标签: linux bash shell

我已经编写了一个重命名脚本,就像这样

for i in *.xml
do
    cp ${i} "suffix${i:6}"
done

但我不知道如何更改xml文件中的文本。

例如在所有文件中我都有“asdfg”这个词,我想用“qwert”替换它。

我知道在bash脚本中可能并且可能很简单,但我不知道如何编写代码,我甚至不知道如何谷歌它

由于

2 个答案:

答案 0 :(得分:5)

for i in *.xml ; do
    sed -e 's/asdfg/qwert/g' <"$i" >"suffix${i:6}"
done

答案 1 :(得分:0)

谷歌“替换文件中的字符串”给了我以下链接:http://www.cyberciti.biz/faq/unix-linux-replace-string-words-in-many-files/

...使用sedbash循环提供一个解决方案(就像在原始示例中一样。)