想把项目中的.h和.c文件拿出来,项目实在巨大,里面文件巨多。写了一个shell tool把.c和.h筛选出来。第一次用shell来完成一个小功能啊,用了两个小时...
cpdir.sh
#!/bin/bash
function copdir(){
local srcdir=$1
local destdir=$2
cp ${srcdir}/*.c ${destdir} 2>>error.out
cp ${srcdir}/*.h ${destdir} 2>>error.out
for subdir in $(ls ${srcdir})
do
if test -d ${srcdir}/$subdir
then
mkdir ${destdir}/${subdir}
copdir ${srcdir}/${subdir} ${destdir}/${subdir}
fi
done
return
}
copdir $1 $2
使用方法: ./cpdir.sh 源文件夹 目标文件夹
注意函数中变量定义前一定要加上local,要不然变量就成为全局变量了,递归调用时会出错的...