#!/usr/bin/bash
#备份的目的目录
BACDIR="/home/wxr/backup"
#备份的子目录每天备份在一个子目录下
SUBDIR=backup-$(date +%m%d%y)
#备份的源目录
DIRS[0]="/home/wxr/workspace"
DIRS[1]="/home/wxr/school"
DIRS[2]="/home/wxr/themes"
DIRS[3]="/home/wxr/scripts"
DIRS[4]="/home/wxr/Desktop"
#备份的数量
NUMDIRS=${#DIRS[*]}
#进入备份目录
if [ ! -d "$BACDIR" ];
then
mkdir "$BACDIR"
fi
cd "$BACDIR"
#进入备份子目录如果子目录存在则另加子目录 有时候更改系统时间
if [ -d "$SUBDIR" ];
then
I=0
while [ -d "$SUBDIR""_"$I ]
do
let I=$I+1
done
SUBDIR+="_"$I
fi
mkdir "$SUBDIR"
#备份源目录
I=0
while [ $I -lt $NUMDIRS ]
do
if [ -d "${DIRS[$I]}" ];
then
#提取本分源文件夹名称
MAGIC=".190427150621502"
echo "${DIRS[$I]}" > $MAGIC
NAME="backup"$(sed -e 's/\//-/g' $MAGIC )
rm $MAGIC
#压缩备份
tar cjf "$BACDIR/$SUBDIR/$NAME".tar.bz2 "${DIRS[$I]}"
echo "Backed up ($[$I+1]/$NUMDIRS) directories."
let I=$I+1
done
echo "Backups complete, have a nice day!"