即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

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

编程语言 u010016150 15℃ 0评论

最要操作其实就只有两个’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

转载请注明:CodingBlog » Shell 递归多个子目录下的文件cp or mv到同一个目录下

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情