Skip to content

Instantly share code, notes, and snippets.

@douglascabral
Created September 16, 2016 13:38
Show Gist options
  • Save douglascabral/3dd1b3ae95dc62aa2fcaa84d8d0f1317 to your computer and use it in GitHub Desktop.
Save douglascabral/3dd1b3ae95dc62aa2fcaa84d8d0f1317 to your computer and use it in GitHub Desktop.
Extract command for bash
function extract {
if [ -z "$1" ]; then
# display usage if no parameters given
echo "Usage: extract ."
else
if [ -f $1 ] ; then
# NAME=${1%.*}
# mkdir $NAME && cd $NAME
case $1 in
*.tar.bz2) tar xvjf ../$1 ;;
*.tar.gz) tar xvzf ../$1 ;;
*.tar.xz) tar xvJf ../$1 ;;
*.lzma) unlzma ../$1 ;;
*.bz2) bunzip2 ../$1 ;;
*.rar) unrar x -ad ../$1 ;;
*.gz) gunzip ../$1 ;;
*.tar) tar xvf ../$1 ;;
*.tbz2) tar xvjf ../$1 ;;
*.tgz) tar xvzf ../$1 ;;
*.zip) unzip ../$1 ;;
*.Z) uncompress ../$1 ;;
*.7z) 7z x ../$1 ;;
*.xz) unxz ../$1 ;;
*.exe) cabextract ../$1 ;;
*) echo "extract: '$1' - unknown archive method" ;;
esac
else
echo "$1 - file does not exist"
fi
fi
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment