Monday, July 26, 2010

My backup script in bash

#! /bin/bash

_DEBUG="on"

TOMBOY="/media/ext500hdd/Backups/Ubuntu-9.04/tomboy"
PIDGIN="/media/ext500hdd/Backups/Ubuntu-9.04/purple"
BANKING="/media/ext500hdd/Backups/Ubuntu-9.04/banking"
CPP="/media/ext500hdd/Backups/Ubuntu-9.04/CPP"
DOCS="/media/ext500hdd/Backups/Ubuntu-9.04/docs"
PICS="/media/ext500hdd/Backups/Ubuntu-9.04/pics"
QT="/media/ext500hdd/Backups/Ubuntu-9.04/Qt"
WORKSPACE="/media/ext500hdd/Backups/Ubuntu-9.04/workspace"
XCHAT="/media/ext500hdd/Backups/Ubuntu-9.04/xchat"
JAVATOOLS="/media/ext500hdd/Backups/Ubuntu-9.04/javaTools"

export BACKUPS="$HOME/.tomboy:$TOMBOY \
$HOME/.purple:$PIDGIN \
$HOME/Banking:$BANKING \
$HOME/C++:$CPP \
$HOME/Documents:$DOCS \
$HOME/Pictures:$PICS \
$HOME/Qt:$QT \
$HOME/workspace:$WORKSPACE \
$HOME/.xchat2:$XCHAT \
$HOME/Java-tools:$JAVATOOLS \
"

function backup_dir () {
mkdir -p $2
rsync -r $1 $2
}

for X in $BACKUPS; do
SOURCE="`echo $X | cut -d : -f 1 `"
DEST="`echo $X | cut -d : -f 2 `"
backup_dir $SOURCE $DEST
done

0 comments: