aboutsummaryrefslogtreecommitdiff
path: root/scripts/.local/bin/personal/extract
blob: b51c4137f6684d92f7c4ab9a8145db15fa3d96c6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/env bash

if [ -f $1  ] ; then
  case $1 in
    *.tar.bz2)   tar -xvjf $1 --one-top-level   ;;
    *.tar.gz)    tar -xvzf $1 --one-top-level   ;;
    # *.bz2)       bunzip2 $1   ;;
    *.rar)       unrar x $1   ;;
    *.gz)        gunzip $1    ;;
    *.tar)       tar xf $1    ;;
    *.tbz2)      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)   tar xf $1    ;;
    *)           echo "'$1' cannot be extracted via ex()" ;;
  esac
else
  echo "'$1' is not a valid file"
fi