backup.sh (764B)
1 #!/bin/sh 2 3 # Backup script 4 5 BACKUP_FILE="$XDG_CONFIG_HOME/regexghost/backup.txt" 6 BACKUP_LOCATION="$HOME/Downloads/BackupMount/MainBackup" 7 8 if [ "$1" = "add" ]; then 9 [ -e "$2" ] && echo "$2" | sed "s|$HOME||g" >> "$BACKUP_FILE" 10 elif [ "$1" = "remove" ] || [ "$1" = "rm" ]; then 11 file="$(echo "$2" | sed "s|$HOME||g")" 12 if grep -q "^${file}\$" "$BACKUP_FILE"; then 13 sed "\:^$file\$:d" "$BACKUP_FILE" > /tmp/backup-tempfile 14 mv /tmp/backup-tempfile "$BACKUP_FILE" 15 fi 16 elif [ "$1" = "ls" ]; then 17 cat "$BACKUP_FILE" | sed 's/^/~/g' 18 elif [ "$1" = "make" ]; then 19 rsync -ar --delete --info=progress2 "${BACKUP_LOCATION}/latest/" "${BACKUP_LOCATION}/previous/" 20 rsync -ar --delete --info=progress2 --files-from="${BACKUP_FILE}" "$HOME" "${BACKUP_LOCATION}/latest/" 21 fi