On this page you’ll find the code of my shell scripts. You’re welcome to use them!
Have a lot of fun…
I wrote this script so I could learn a bit more about writing shell scripts and finally I can put the command of this script in my
This is a script which does a backup of specific folders and/or files. It creates a
.tar.gz archive and sets the name of the backup as
Put your folders and files where I declared the variables
PATH_# and change the path where the archive has to go.
Before you start the shell script, you maybe need to make it executable with this command:
$ chmod +x backup.sh
Run it with:
And here is the code of my script:
#!/bin/bash # backup script # backup.sh # -e activates escape sequences like \n echo -e "\nBackup will start now...\n" echo -n -e "Continue? (y|n): " read input if [ "$input" = "y" ] then # prints the date like "11-11-2011" # new variable "VARDATE" VARDATE=`date +"%d-%m-%Y"` # print value of VARDATE with: # echo $VARDATE # test if you are at home test "$PWD" = "$HOME" if [ `echo $?` = "1" ] then cd ~ fi # backup paths, work with relative paths PATH_1=Documents PATH_2=Studium PATH_3=Pictures PATH_4=.mozilla PATH_5=.thunderbird PATH_6=Public PATH_7=Shell.Skripte FILE_1=.conkyrc echo -e "\nThe following Folders will be archived:\n$PATH_1\n$PATH_2\n$PATH_3\n$PATH_4\n$PATH_5\n$PATH_6\n$PATH_7\n$FILE_1\n" # create the archive, preserve the time stemp when the files where accessed tar -czf Backup-$VARDATE.tar.gz --atime-preserve $PATH_1 $PATH_2 $PATH_3 $PATH_4 $PATH_5 $PATH_6 $PATH_7 $FILE_1 FILESZ=`du -h Backup-$VARDATE.tar.gz` echo -e "\nSize of archive is:\n$FILESZ" # check if external hdd MaryJane is connected test -e /media/MaryJane/ if [ `echo $?` = "1" ] then echo -e "\nExternal HDD 'MaryJane' not connected!\nArchive remains in HOME directory!\n" else # move the created archive to the external hdd "MaryJane" mv Backup-$VARDATE.tar.gz /media/MaryJane/Backups/ fi elif [ "$input" = "n" ] then echo -e "\nAborted" else echo -e "\nIncorect Input" fi