增量备份系统文件的shell脚本,增量备份shell脚本


今天来写一个使用shell脚本增量备份系统文件,顺便复习一下shell脚本相关的命令,这个脚本可以根据自己的需求来备份不同的文件或者文件夹,进行完整备份和增量备份。直接上脚本如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

#!/bin/sh

#Automatic Backup Linux System Files

#Author wugk2013-11-22

#Define Variable

SOURCE_DIR=(

$*

)

TARGET_DIR=/data/backup/

YEAR=`date +%Y`

MONTH=`date +%m`

DAY=`date +%d`

WEEK=`date +%u`

FILES=system_backup.tgz

CODE=$?

if

[ -z"$*"];then

echo -e"Please Enter Your Backup Files or Directoriesn--------------------------------------------nExample $0 /boot /etc ......"

exit

fi

#Determine Whether the Target Directory Exists

if

[ ! -d $TARGET_DIR/$YEAR/$MONTH/$DAY ];then

mkdir -p $TARGET_DIR/$YEAR/$MONTH/$DAY

echo"This $TARGET_DIR is Created Successfully !"

fi

#EXEC Full_Backup Function Command

Full_Backup()

{

if

["$WEEK"-eq"7"];then

rm -rf $TARGET_DIR/snapshot

cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;tar -g $TARGET_DIR/snapshot -czvf $FILES `echo ${SOURCE_DIR[@]}`

["$CODE"=="0"]&&echo -e"--------------------------------------------nThese Full_Backup System Files Backup Successfully !"

fi

}

#Perform incremental BACKUP Function Command

Add_Backup()

{

cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;

if

[ -f $TARGET_DIR/$YEAR/$MONTH/$DAY/$FILES ];then

read -p"These $FILES Already Exists, overwrite confirmation yes or no ? : "SURE

if[ $SURE =="no"-o $SURE =="n"];then

sleep1;exit0

fi

#Add_Backup Files System

if

[ $WEEK -ne"7"];then

cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;tar -g $TARGET_DIR/snapshot -czvf $$_$FILES `echo ${SOURCE_DIR[@]}`

["$CODE"=="0"]&&echo -e"-----------------------------------------nThese Add_Backup System Files Backup Successfully !"

fi

else

if

[ $WEEK -ne"7"];then

cd $TARGET_DIR/$YEAR/$MONTH/$DAY ;tar -g $TARGET_DIR/snapshot -czvf $FILES `echo ${SOURCE_DIR[@]}`

["$CODE"=="0"]&&echo -e"-------------------------------------------nThese Add_Backup System Files Backup Successfully !"

fi

fi

}

Full_Backup;Add_Backup

相关内容

    暂无相关文章