Skip to content

Instantly share code, notes, and snippets.

@victorgabrielbs
Last active March 30, 2025 19:49
Show Gist options
  • Save victorgabrielbs/073dbd9b6bac4cfa932fa008c4064ed0 to your computer and use it in GitHub Desktop.
Save victorgabrielbs/073dbd9b6bac4cfa932fa008c4064ed0 to your computer and use it in GitHub Desktop.
#!/usr/bin/env bash
if [ -f "$1" ] ; then
case $1 in
*.tar.bz2) tar xjf "$1" ;;
*.tar.gz) tar xzf "$1" ;;
*.bz2) bunzip2 "$1" ;;
*.rar) unrar x "$1" ;;
*.gz) gunzip "$1" ;;
*.tar) tar xf "$1" ;;
*.tbz2) tar xjf "$1" ;;
*.tbz) tar xjf "$1" ;;
*.tgz) tar xzf "$1" ;;
*.zip) unzip "$1" ;;
*.Z) uncompress "$1";;
*.7z) 7z x "$1" ;;
*.deb) ar x "$1" ;;
*.tar.xz) tar xf "$1" ;;
*.tar.zst) unzstd "$1" ;;
*.xz) xz -d "$1" ;;
*.zst) unzstd "$1" ;;
*.lz) lzip -d "$1" ;;
*.lzma) unlzma "$1" ;;
*) echo "'$1' cannot be extracted via desc" ;;
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