X-Git-Url: https://feistymeow.org/gitweb/?a=blobdiff_plain;f=scripts%2Farchival%2Funpack.sh;h=6670f489f8b408da83baa6983006bd1cb0a398d6;hb=0237507bda3ecd0cebab0eeddc3cfefa4d9b3650;hp=103ec1932b66269da79ae19724c773a8ae357886;hpb=da12bc4babc06a03a41ef75626fd47e2d2891048;p=feisty_meow.git diff --git a/scripts/archival/unpack.sh b/scripts/archival/unpack.sh index 103ec193..6670f489 100644 --- a/scripts/archival/unpack.sh +++ b/scripts/archival/unpack.sh @@ -20,12 +20,13 @@ if [ -z "$archive_file" ]; then exit 1 fi if [ ! -f "$archive_file" ]; then - echo "The file specified for unpacking cannot be located: $archive_file" + echo "The file specified cannot be located: $archive_file" exit 1 fi unpack_dir="$1"; shift if [ -z "$unpack_dir" ]; then - unpack_dir=$(echo unpacked_$(basename $archive_file) | sed -e 's/^\([^\.]*\)\..*/\1/') + all_but_last="$(echo "$(basename $archive_file)" | sed -e 's/\([\^.]*\)\.[^\.]*$/\1/')" + unpack_dir="arch_${all_but_last}" fi if [ ! -d "$unpack_dir" ]; then @@ -57,6 +58,8 @@ if [[ $archive_file =~ .*\.tar$ \ || $archive_file =~ .*\.iar$ \ || $archive_file =~ .*\.oar$ \ || $archive_file =~ .*\.tgz$ \ + || $archive_file =~ .*\.ova$ \ + || $archive_file =~ .*\.snarf$ \ ]]; then tar -xf $archive_file &>/dev/null elif [[ $archive_file =~ .*\.zip$ \