X-Git-Url: https://iankelling.org/git/?p=small-misc-bash;a=blobdiff_plain;f=ex;h=ff8edb77ce5e7f01441166f1209b4b00642ad6b5;hp=e0ea044c4698753ea6ded729ea3d4ba9617ba1ca;hb=af46c120676d3581ba56eff977d1c45611186178;hpb=e1828c55ddc97196af903d0a39eaebdba46a6b44 diff --git a/ex b/ex index e0ea044..ff8edb7 100755 --- a/ex +++ b/ex @@ -18,11 +18,9 @@ ex() { Extract many types of files Based on their extensions, -7z bz2 deb gz iso dsc rar rpm tar xz zip sfs & some combinations. +7z [tar.]bz2 deb [tar.]gz iso dsc rar rpm sfs tar xpi [tar.]xz zip Z. See source for exact file extensions. -Note: apt-get install dtrx will do the same for -most of these types, plus some more, I'm going -to try it out sometime." +Note: dtrx (package & command) extracts most of these plus some others." if [[ $1 == --help ]]; then echo "$help" @@ -30,18 +28,11 @@ to try it out sometime." local x super for x in "$@"; do case "$x" in - *.tar.bz2 | *.tbz2 ) tar xjf "$x" ;; - *.tar.gz | *.tgz ) tar xzf "$x" ;; - *.bz2 ) bunzip2 "$x" ;; - *.gz ) gunzip "$x" ;; - *.tar ) tar xf "$x" ;; - *.zip|*.xpi ) unzip "$x" ;; - *.Z ) uncompress "$x" ;; *.7z ) 7za x "$x" ;; + *.bz2 ) bunzip2 "$x" ;; *.deb ) ar x "$x" ;; - *.rpm ) rpm2cpio "$x" | cpio --extract --make-directories ;; - *.tar.xz ) tar Jxf "$x" ;; - *.xz) xz -d "$x" ;; + *.dsc) dpkg-source -x "$x" ;; + *.gz ) gunzip "$x" ;; *.iso ) local super if [[ $EUID != 0 ]]; then @@ -55,10 +46,18 @@ to try it out sometime." cp -a "$temp_dir"/* "$dir" $super umount "$temp_dir" ;; + *.jar) jar xf "$x" ;; *.r[0-9][0-9]|*.rar ) unrar x "$x" ;; - *.dsc) dpkg-source -x "$x" ;; + *.rpm ) rpm2cpio "$x" | cpio --extract --make-directories ;; *.sfs) $super unsquashfs "$x" ;; - *.jar) jar xf "$x" ;; + *.tar ) tar xf "$x" ;; + *.tar.bz2 | *.tbz2 ) tar xjf "$x" ;; + *.tar.gz | *.tgz ) tar xzf "$x" ;; + *.tar.xz ) tar Jxf "$x" ;; + *.xz) xz -d "$x" ;; + *.Z ) uncompress "$x" ;; + *.zip|*.xpi ) unzip "$x" ;; + *) echo "I don't know how to extract $x";; esac done