[CentOS] replace multiple string
m.roth at 5-cent.us
m.roth at 5-cent.us
Fri Sep 23 17:51:47 UTC 2011
madunix at gmail.com wrote:
>
> I would like to use a bash script that searches files and
> subdirectories name in a directory /var/ww/html/web
> for a specific string, and when it finds the search string, replaces
> the string (old1) with new string (new1), and so on
> old2 with new2 ....oldn with newn.
>
> replace_string.sh
> #!/bin/bash
> for db in $(find /var/www/html/web -name * -exec)
> do
> sed -e "s/old1/new1/" \
> sed -e "s/old2/new2/" \
> ...
> sed -e "s/oldn/newn/" $db
> done
Close. I think
find /var/www/html/web -type f -exec sed -i -e
"s/old1/new1/;s/old2/new2/;..." {} \;
would do it. The -i is to make the change inplace, editing the existing file.
mark
More information about the CentOS
mailing list