fi
[[ $1 =~ ^--target ]] && shift #handled as last argument later.
+
if [[ $1 =~ ^--name= ]]
then
POSFIX=$(echo $1 | awk -F= '{print $2}');shift
fi
[[ $POSFIX ]] && echo -e "Posfix name set as: $POSFIX" && POSTFIX="$POSFIX-";
+if [[ $1 =~ ^--dir ]]
+then
+ shift;DIRECTORIES="$1";
+ [[ -n $POSFIX ]] && POSFIX="$1";
+ echo "Backing up specified directory:$1";
+ shift;
+fi
+
+
function showHelp (){
read -r -d '' help <<-__help
\e[1;31mBackup Utility \e[0m - by Will Budić (Mon 30 May 2022)\e[17m
DATE=$(date +%Y%m%d)
export BACKUP_START=`date +%F%t%T`
-BACKUP_FILE="$THIS_MACHINE-$POSFIX$DATE.$EXT_ENC"
-BACKUP_INDEX="$THIS_MACHINE-$POSFIX$DATE.$EXT_LST"
-BACKUP_STATS_FILE="$THIS_MACHINE-$POSFIX$DATE.txt"
+BACKUP_FILE="$THIS_MACHINE-$POSTFIX$DATE.$EXT_ENC"
+BACKUP_INDEX="$THIS_MACHINE-$POSTFIX$DATE.$EXT_LST"
+BACKUP_STATS_FILE="$THIS_MACHINE-$POSTFIX$DATE.txt"
if [[ -z IS_LOCAL || -z "$1" ]]
then
export status_bar_lbl=`echo -e "\e[32mBackup Status\e[0m"`;
echo -e "\e[32mBacking up to ->\e[0m $TARGET/$BACKUP_FILE";
#
- tar cJvi --exclude-caches-all --exclude-vcs --exclude-vcs-ignores --exclude-backups -P -T $BCK_LST | \
- pv -N "$status_bar_lbl" --timer --rate --eta -pw 80 -bs `echo "$file_size/1.8"|bc` | \
+ tar cJvi --exclude-caches-all --exclude-vcs --exclude-vcs-ignores --exclude-backups -P -T $BCK_LST |\
+ pv -N "$status_bar_lbl" --timer --rate -W |
gpg -c --no-symkey-cache --batch --passphrase $GPG_PASS > $TARGET/$BACKUP_FILE 2>&1;
+
else
tar cJi --exclude-caches-all --exclude-vcs --exclude-vcs-ignores --exclude-backups \
-P -T $BCK_LST | \
exit $?
fi
# Remove older backups if any.
- find $TARGET/$THIS_MACHINE*.$EXT_ENC -mtime +1 -exec rm {} + > /dev/null 2>&1
- find $TARGET/$THIS_MACHINE*.$EXT_LST -mtime +1 -exec rm {} + > /dev/null 2>&1
- find $TARGET/$THIS_MACHINE*.txt -mtime +1 -exec rm {} + > /dev/null 2>&1
+ find $TARGET/$THIS_MACHINE-$POSTFIX*.$EXT_ENC -mtime +1 -exec rm {} + > /dev/null 2>&1
+ find $TARGET/$THIS_MACHINE-$POSTFIX*.$EXT_LST -mtime +1 -exec rm {} + > /dev/null 2>&1
+ find $TARGET/$THIS_MACHINE-$POSTFIX*.txt -mtime +1 -exec rm {} + > /dev/null 2>&1
printLine;
echo -e "Backup has finished for: $stats_end";
printLine;
sshfs "$USER@$DEST_SERVER:$BACKUP_DIRECTORY" $TARGET -o allow_other > /dev/null 2>&1
fi
+if [[ ! -z "$1" && "$1" == "--tar" ]]
+then
+ BACKUP_FILE=$(ls $TARGET/$THIS_MACHINE-*.$EXT_ENC|tail -n 1)
+ gpg --decrypt --batch --passphrase $GPG_PASS $BACKUP_FILE | pv -N "Status" -pw 80 | tar -Jtv \
+ > "$BACKUP_FILE.list"
+ echo -e "Tar list of -> $BACKUP_FILE\n"
+ exit
+fi
+
INDEX=$(ls -lh $TARGET/$THIS_MACHINE-*.$EXT_LST |sort -r|head -n 1);
if [[ -z $INDEX ]]
then
echo -e "FAILED to access target backup directory!\n"
exit 0
fi
+
+
+
+
+
INDEX_FILE=$(echo "$INDEX" | awk '{print $9}')
echo -e "Listing $INDEX_FILE\n"
sel=$(xzcat "$INDEX_FILE" | sort -f -u | fzf --multi --header "Listing: $INDEX Config: $CONFIG_FILE")