复制当前目录所有文件夹及其子文件夹下的*.jpg文件到store文件夹下

复制当前目录所有文件夹及其子文件夹下的*.jpg文件到store文件夹下
不论多少层目录结构都可以
更改文件后缀名.jpg为其它后缀名的文件同样适用
Linux脚本

#!/bin/bash
#yikai from TUST,2020/11/02
#功能:复制当前目录中所有文件夹及其子文件夹下的*.jpg文件到store文件夹下
#不论多少层目录结构都可以
#更改文件后缀名.jpg为其它后缀名的文件同样适用

Execution()	#定义主体函数
{
    
	if ls *.jpg >/dev/null 2>&1;then
		cp *.jpg $store_path -rf	#强制复制当前目录中的*.jpg文件到store中
	fi
	dir=$(ls -l ./ |awk '/^d/ {print $NF}')	#获取当前目录下的所有文件夹的名称
	for i in $dir	#遍历目录
	do
	[ $i = "store" ] && continue	#当i为当前存放所有图片的store文件夹时跳过当前循环
	echo $i
	cd $i
		Execution	#函数递归调用,**遍历下层目录中的.jpg文件**
	cd ..
	done
}

[ ! -d "$store" ] && mkdir store	#store目录不存在则建立
cd store
store_path=$(pwd)	#获取store的绝对路径
cd ..
Execution	#函数调用执行
echo "Congratulation!!!!!!!!!"

猜你喜欢

转载自blog.csdn.net/qq_32331239/article/details/109447097