ref: extract func

This commit is contained in:
TheK4n 2021-10-13 23:27:52 +03:00
parent f805c40856
commit fc632d7617

View File

@ -47,9 +47,14 @@ extract () {
if [ -z "$1" ]; then # if string non-zero if [ -z "$1" ]; then # if string non-zero
# display usage if no parameters given # display usage if no parameters given
echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>" echo "Usage: extract <path/file_name>.<zip|rar|bz2|gz|tar|tbz2|tgz|Z|7z|xz|ex|tar.bz2|tar.gz|tar.xz>"
return 100 return 2
else fi
if [ -f "$1" ]; then # if file exists
if ! [ -f "$1" ]; then # if file not exist
echo "error: extract: '$1' file does not exist" >&2
return 1
fi
local NAME local NAME
NAME=${1%.*} NAME=${1%.*}
NAME=${NAME%.*} NAME=${NAME%.*}
@ -77,14 +82,9 @@ extract () {
*.7z) 7z x ../"$1" ;; *.7z) 7z x ../"$1" ;;
*.xz) unxz ../"$1" ;; *.xz) unxz ../"$1" ;;
*.exe) cabextract ../"$1" ;; *.exe) cabextract ../"$1" ;;
*) echo "error: extract: '$1' - unknown archive method" >&2;; *) echo "error: extract: '$1' - unknown archive method" >&2 ;;
esac esac
cd .. cd ..
else
echo "error: extract: '$1' file does not exist" >&2
return 1
fi
fi
} }