shell之for和if实现批量替换多目录下的文件

时间:2022-08-03 04:22:41

问题背景:

生产环境的项目图片文件夹众多,每个项目都会有一个图片文件夹,现在要批量替换每个文件夹下的一张模板图片

如图,我们要替换每一个文件夹下的01.jpg

shell之for和if实现批量替换多目录下的文件

 

 

shell 脚本

#/bin/bash
#遍历需要替换文件的目录
for i in `ls /test/project/`
do
#判断是不是目录
    if [ -d  /test/project/$i ]
    then
#如果是目录,将目录变量匹配到具体的需要替换的子文件夹,z存在则执行替换
    z=/test/project/"$i"/"$i"src/swf/pages/
        if [ -e $z ]
        then
        echo $z
        `/bin/cp /test/01.jpg $z` >> /test/cp.log
        fi
    fi
done