Linux下的增量备份小程序

Linux下增量备份程序的命令形式:1.可执行文件 源文件 as:./a  sourcefile

2. 更新备份的时间:usage as:1979-01-01 10:20 : 1979 01 01 10 20

3.输入增量备份的目文件:

#获取文件的更新时间

function gettime(){

var=`ls -l $1| grep ":[0-9]\{2,\} 1" | sed 's/[ ]\{1,\}/ /g' | cut -f6-7  -d' ' | sed 's/[ -:]//g'`

echo $var

}

#对文件进行增量备份

function getdir(){

for name in `ls $1`

do

if [ -d $1"/"$name ]; then

mkdir -p $localname"/"$1"/"$name

getdir $1"/"$name

else

new_time=`gettime $1"/"$name`

if [ $new_time -ge $time ]; then

#通过增量备份时间与文件更新时间的差值对比,来确定是否进行备份

cp $1"/"$name -t $localname"/"$1"/"

fi

fi

done

}

printf "Please enter the date,time :(as:1979-01-01 10:20 : 1979 01 01 10 20)\n"

read time1 time2 time3 time4 time5

#获取增量备份时间

time="$time1$time2$time3$time4$time5"

#read time1 time2

#time="$time1$time2"

#echo $time

printf "Please enter the direction name:"

#增量备份所存文件夹

read localname

mkdir -p $localname"/"$1

getdir $1

相关推荐