批量更改多个文件内容

需要修改多个文件的内容,一个一个的替换比较繁琐。那么有没有什么好的方法直接多多个文件进行批量修改呢?方法如下:

1. sed

grep old_string -rl ./* | xargs sed -i “s/old_string/new_string/g”

sed -i “s/old_string/new_string/g” grep old_string -rl ./*

如:

sed -i “s/11/xxx/g” grep 11 -rl ./*

grep xxxx -rl ./* | xargs sed -i “s/x/asdfadsfasdfafd/g”

2. perl

perl -pi -e ‘s|old_string|new_string|g’ find ./ -type f

如:

perl -pi -e ‘s|ISO-8859-1|UTF-8|g’ find ./ -type f