[CentOS] replace multiple string

madunix at gmail.com madunix at gmail.com
Fri Sep 23 17:59:08 UTC 2011


>>-type f ??
the string could be a name of file name or subdirectory name

Thanks
pons

On Fri, Sep 23, 2011 at 8:51 PM,  <m.roth at 5-cent.us> wrote:
> 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
>
> _______________________________________________
> CentOS mailing list
> CentOS at centos.org
> http://lists.centos.org/mailman/listinfo/centos
>



More information about the CentOS mailing list