aboutsummaryrefslogtreecommitdiff
path: root/scripts/.local/bin/personal/extract
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/.local/bin/personal/extract')
-rwxr-xr-xscripts/.local/bin/personal/extract23
1 files changed, 23 insertions, 0 deletions
diff --git a/scripts/.local/bin/personal/extract b/scripts/.local/bin/personal/extract
new file mode 100755
index 0000000..b51c413
--- /dev/null
+++ b/scripts/.local/bin/personal/extract
@@ -0,0 +1,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