From 01beada04d37116f97a4dd7e9b268a8ad44794ce Mon Sep 17 00:00:00 2001 From: Q Date: Tue, 7 Mar 2023 20:34:48 +0200 Subject: [PATCH] sorted tar --- files/archive-subfolders | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/files/archive-subfolders b/files/archive-subfolders index 22c15eb..615c248 100755 --- a/files/archive-subfolders +++ b/files/archive-subfolders @@ -1,6 +1,6 @@ #!/bin/bash -VERSION="20190820" +VERSION="20230307" function helpexit() { BS=$( basename "$0" ) @@ -81,6 +81,10 @@ for ((i=1; i<=${#@}; i++)) { } [[ ${#FOLDERS[@]} -eq 0 ]] && FOLDERS+=( "." ) which pv &>/dev/null || { echo pv command missing; exit 1; } +if tar --version | grep -q GNU; then + SORTFILES="--sort=name" +fi + export IFS=$'\n' REALFOLDERS=( $( listfolders "${FOLDERS[@]}" ) ) echo $R'Existing files will be overwritten!'$Z @@ -104,7 +108,7 @@ for d in "${REALFOLDERS[@]}"; do printf "$d" SIZE=$( find "$d" -type f -printf %s"\n" | count_size "$d" ) printf "\n" - eval "tar cvv --index-file=\"$d.${SUFFIX}.lst\" \"$d\" | \ + eval "tar cvv $SORTFILES --index-file=\"$d.${SUFFIX}.lst\" \"$d\" | \ pv -s \"$SIZE\" $COMPRESSCMD > \"$d.${SUFFIX}\"" && { # tar exists okay NEWEST="$( awk '{ print $4 " " $5 }' "$d.${SUFFIX}.lst" | sort | tail -n 1 )"