shell 批量替换内容

一、查找/data/www/vhosts/WOStest2_YiiFramework/console/sh/下所有.sh文件

把/data/www/vhosts/WOS_YiiFramework 替换成/data/www/vhosts/WOStest2_YiiFramework

for shfile in `ls /data/www/vhosts/WOStest2_YiiFramework/console/sh/*.sh`
do
    sed -i 's/\/data\/www\/vhosts\/WOS_YiiFramework/\/data\/www\/vhosts\/WOStest2_YiiFramework/g' $shfile
done

 

二、查找/data/www/vhosts/WOStest2_YiiFramework/console/sh/下所有.sh文件(包括该目录下的所有子目录)

把/data/www/vhosts/WOS_YiiFramework 替换成/data/www/vhosts/WOStest2_YiiFramework

function getdir(){
        #echo $1
        for file in $1/*

        do
        if test -f $file
        then
                #echo $file
                arr=(${arr[*]} $file)
        else
                getdir $file
        fi
        done
}
getdir /data/www/vhosts/WOStest2_YiiFramework/console/sh
#echo  ${arr[@]}
for shfile in ${arr[@]}
do
  # echo $shfile
    sed -i 's/\/data\/www\/vhosts\/WOS_YiiFramework/\/data\/www\/vhosts\/WOStest2_YiiFramework/g' $shfile
done

 

三、批量查找内容进行替换

把/wos/test4/portal/web/v0/WOS/目录下以module开关的所有文件的arr替换成arr_new

#!/bin/sh 

arr=(wps.wondershare ods.wondershare hrbi.wondershare)
arr_new=(wpstest3.wondershare odstest3.wondershare hrbitest3.wondershare)
for shfile in `ls /wos/test4/portal/web/v0/WOS/module.*`
do
    for i in "${!arr[@]}";
    do
        #printf "%s-->%s\n" "${arr[$i]}" "${arr_new[$i]}"
        #echo s/${arr[$i]}/${arr_new[$i]}/g
        sed -i 's/'${arr[$i]}'/'${arr_new[$i]}'/g' $shfile
    done
done

 

转载于:https://www.cnblogs.com/ai594ai/p/7228855.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值