diff options
Diffstat (limited to '')
-rwxr-xr-x | hm/soispha/conf/lf/commands/scripts/archive.sh | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/hm/soispha/conf/lf/commands/scripts/archive.sh b/hm/soispha/conf/lf/commands/scripts/archive.sh index 27947d6f..e437dad2 100755 --- a/hm/soispha/conf/lf/commands/scripts/archive.sh +++ b/hm/soispha/conf/lf/commands/scripts/archive.sh @@ -36,9 +36,10 @@ esac prompt "Archive name: " name="" -while [ -z "$name" ] || [ -e "$name.$ext" ]; do - read -r name - if [ -e "$name.$ext" ]; then +while [ -z "$name" ] || [ -e "$name" ]; do + read -r name_base + name="$name_base.$ext" + if [ -e "$name" ]; then prompt "Archive already exists, overwrite [y|N]: " read -r ans @@ -60,17 +61,17 @@ done <"$(tmp echo "$fx")" case "$archiver" in "gzip") - tar --create --gzip -file="$name".tar.gz "$@" + tar --create --gzip -file="$name" "$@" ;; "xz") - tar --create --file="$name".tar "$@" - xz --compress -9 --extreme --threads=0 "$name".tar + tar --create --file="$name" "$@" + xz --compress -9 --extreme --threads=0 "$name" ;; "7z") - 7z a "$name".7z "$@" + 7z a "$name" "$@" ;; "zip") - zip --symlinks -9 -r "$name".zip "$@" + zip --symlinks -9 -r "$name" "$@" ;; esac # vim: ft=sh |