mirror of
https://github.com/GeorgeSG/dotfiles.git
synced 2026-09-02 23:58:45 +00:00
31 lines
1.3 KiB
Bash
Executable File
31 lines
1.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
#
|
|
# Usage: extract <file>
|
|
# Description: extracts archived files / mounts disk images
|
|
# Note: .dmg/hdiutil is macOS-specific.
|
|
#
|
|
# credit: http://nparikh.org/notes/zshrc.txt
|
|
extract () {
|
|
if [ -f $1 ]; then
|
|
case $1 in
|
|
*.tar.bz2) tar -jxvf $1 ;;
|
|
*.tar.gz) tar -zxvf $1 ;;
|
|
*.bz2) bunzip2 $1 ;;
|
|
*.dmg) hdiutil mount $1 ;;
|
|
*.gz) gunzip $1 ;;
|
|
*.tar) tar -xvf $1 ;;
|
|
*.tbz2) tar -jxvf $1 ;;
|
|
*.tgz) tar -zxvf $1 ;;
|
|
*.zip) unzip $1 ;;
|
|
*.ZIP) unzip $1 ;;
|
|
*.pax) cat $1 | pax -r ;;
|
|
*.pax.Z) uncompress $1 --stdout | pax -r ;;
|
|
*.rar) unrar x $1 ;;
|
|
*.Z) uncompress $1 ;;
|
|
*) echo "'$1' cannot be extracted/mounted via extract()" ;;
|
|
esac
|
|
else
|
|
echo "'$1' is not a valid file"
|
|
fi
|
|
}
|