#!/bin/bash
function recursive_copy_file()
{
dirlist=$(ls $1)
for name in ${dirlist[*]}
do
if [ -f $1/$name ]; then
# 如果是文件,并且$2不存在該文件,則直接copy
if [ ! -f $2/$name ]; then
cp $1/$name $2/$name
fi
elif [ -d $1/$name ]; then
# 如果是目錄,并且$2不存在該目錄,則先創建目錄
if [ ! -d $2/$name ]; then
mkdir -p $2/$name
fi
# 遞歸拷貝
recursive_copy_file $1/$name $2/$name
fi
done
}
source_dir="/tmp/test/system"
dest_dir="/tmp/test/systemback"
recursive_copy_file $source_dir $dest_dir