shell脚本示例,复制名为dir1和dir2的目录下所有的文件到名为dir3的新目录

#! /bin/sh

if [ $# -eq 3 ]
then
	dir1=$1
	dir2=$2
	dir3=$3

	if [ -d $dir1 -a -d $dir2 ]
	then
		if [ -d $dir3 ]
		then
			echo "$dir3 already exits"
			exit
		else
			cp -r -p $dir1 $dir3
			echo -e "These files from $dir1 copied into $dir3: "
			list=`ls $dir3`
			echo $list
			
			ls $dir3 | sort > a.txt
			ls $dir2 | sort > b.txt
		
			comm a.txt b.txt -1 -3 > new.txt
			echo -e "\nThese new file(s) from $dir2 copied into dir3 "	
			cat new.txt| while read line   
			do
    			cp -p $dir2/$line $dir3
    			echo $line
			done
			
			comm a.txt b.txt -1 -2 > old.txt
			echo -e "\nThese file(s) from $dir2 copied into $dir3 and overwrite(s) their namesakes in $dir3:"
			cat old.txt| while read line   
			do
    			mTimeDir1=`find $dir2 -name $line -printf "%AY-%Am-%Ad %AH:%AM:%AS"`
    			mTimeDir2=`find $dir1 -name $line -printf "%AY-%Am-%Ad %AH:%AM:%AS"`
				t1=`date -d "$mTimeDir1" +%s`
				t2=`date -d "$mTimeDir2" +%s`
				if [ $t1 -lt $t2 ]; then
    				cp -p $dir2/$line $dir3
    				echo $line
				fi
			done	
		fi
	else
		echo "$dir1 or $dir2 not exits"
		exit
	fi
else
	echo "Less Parameters"
fi

rm a.txt b.txt new.txt old.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值