Skip to content

Instantly share code, notes, and snippets.

@wallentx
Created August 3, 2023 23:50
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save wallentx/6c0fc739701feed417c7d99d599ae556 to your computer and use it in GitHub Desktop.
Save wallentx/6c0fc739701feed417c7d99d599ae556 to your computer and use it in GitHub Desktop.
Easy archive extraction
###########################
# Easy archive extraction!
###########################
extract() {
if [ -f $1 ] ; then
case $1 in
*.tar.bz2) tar xvjf $1 ;;
*.tar.gz) tar -I pigz -xvzf $1 ;;
*.tar.zst) tar -I "zstd -T0" -xvf $1 ;;
*.bz2) bunzip2 $1 ;;
*.rar) unrar x $1 ;;
*.gz) pigz -dk $1 ;;
*.tar) tar xvf $1 ;;
*.tbz2) tar xvjf $1 ;;
*.tgz) tar -I pigz -xvzf $1 ;;
*.zip) unzip $1 ;;
*.Z) uncompress $1 ;;
*.7z) 7z x $1 ;;
*.zstd) tar -I "zstd -T0" -xvf $1 ;;
*.deb) ar x $1 ;;
*.whl) unzip $1 ;;
*.xz) tar -xvf $1 ;;
*) echo "'$1' cannot be extracted via >extract<" ;;
esac
else
echo "'$1' is not a valid file!"
fi
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment