Fisxed bug related to verbose mode
All checks were successful
backup.sh / bash (push) Successful in 29s

This commit is contained in:
Marco Cetica 2024-11-04 08:59:32 +01:00
parent c227a2f6d7
commit 2b644feb0b
Signed by: marco
GPG Key ID: 45060A949E90D0FD
3 changed files with 12 additions and 6 deletions

View File

@ -121,6 +121,10 @@ make_backup() {
for file in "$BACKUP_SH_SUBDIR"/**/*; do for file in "$BACKUP_SH_SUBDIR"/**/*; do
# Skip symbol links and directories # Skip symbol links and directories
[ -d "$file" ] || [ -L "$file" ] && continue [ -d "$file" ] || [ -L "$file" ] && continue
if [ "$BACKUP_SH_VERBOSE" -eq 1 ]; then
printf "Computing checksum for '%s'...\n" "$file"
fi
gethash "$file" >> "$BACKUP_SH_CHECKSUM_FILE" gethash "$file" >> "$BACKUP_SH_CHECKSUM_FILE"
done done
shopt -u globstar dotglob shopt -u globstar dotglob
@ -132,13 +136,12 @@ make_backup() {
# Compress backup directory # Compress backup directory
echo "Compressing backup..." echo "Compressing backup..."
if [ "$BACKUP_SH_VERBOSE" -eq 1 ]; then if [ "$BACKUP_SH_VERBOSE" -eq 1 ]; then
tar -cvzf "$BACKUP_SH_OUTPATH/backup.sh.tar.gz" \ printf "Compressing '%s'...\n" "$file"
-C "$BACKUP_SH_OUTPATH" "$BACKUP_SH_FOLDER"
else
tar -czf "$BACKUP_SH_OUTPATH/backup.sh.tar.gz" \
-C "$BACKUP_SH_OUTPATH" "$BACKUP_SH_FOLDER" > /dev/null 2>&1
fi fi
tar -czf "$BACKUP_SH_OUTPATH/backup.sh.tar.gz" \
-C "$BACKUP_SH_OUTPATH" "$BACKUP_SH_FOLDER" > /dev/null 2>&1
# Encrypt backup directory # Encrypt backup directory
echo "Encrypting backup..." echo "Encrypting backup..."
gpg -a \ gpg -a \
@ -176,6 +179,7 @@ extract_backup() {
BACKUP_SH_VERBOSE="$4" BACKUP_SH_VERBOSE="$4"
# Decrypt the archive # Decrypt the archive
echo "Decrypting backup..."
gpg -a \ gpg -a \
--quiet \ --quiet \
--decrypt \ --decrypt \
@ -206,7 +210,9 @@ extract_backup() {
printf "[FATAL] - integrity error for '%s'.\n" "$file" printf "[FATAL] - integrity error for '%s'.\n" "$file"
exit 1 exit 1
fi fi
printf "[OK] - integrity check for '%s' passed.\n" "$file" if [ "$BACKUP_SH_VERBOSE" -eq 1 ]; then
printf "[OK] - integrity check for '%s' passed.\n" "$file"
fi
done done
shopt -u globstar dotglob shopt -u globstar dotglob
fi fi

Binary file not shown.

Binary file not shown.