您的位置:首页 > 运维架构 > Shell

Shell 递归多个子目录下的文件cp or mv到同一个目录下

2017-04-24 14:21 2216 查看
最要操作其实就只有两个’ls’和’cp’。

1、ls 用来遍历当前目录下的文件。

2、cp用来复制当前目录下的文件到目标目录中。

########################################################################
# File Name: cpToFile.sh
# Author: zsj
# Created Time: Mon 24 Apr 2017 12:30:09 PM CST
#########################################################################
#!/bin/bash

src="/home/zsj/data"       //源文件的父目录
dst="/home/zsj/testDest"  //目标目录

function read_dir(){
for file in `ls $1`;do   #操作1
#   echo "-->"$file
if [ -d $1"/"$file ];then
read_dir $1"/"$file
elif [ -f $1"/"$file ];then # 操作2||cp base file to dst file
# echo $1$"/"$file
[ `cp $1"/"$file $dst` ]
#   else echo ".."
fi
done
}

read_dir $src
echo "successful!"
#echo $1"  "$2
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: