diff --git a/bash/bash_functions b/bash/bash_functions index aaea6af..c62da31 100644 --- a/bash/bash_functions +++ b/bash/bash_functions @@ -3,49 +3,77 @@ ### ARCHIVE EXTRACTION # usage: ex function ex { - if [ -z "$1" ]; then - # display usage if no parameters given - echo "Usage: ex ." - echo " extract [path/file_name_2.ext] [path/file_name_3.ext]" - else - for n in "$@" - do - if [ -f "$n" ] ; then - case "${n%,}" in - *.cbt|*.tar.bz2|*.tar.gz|*.tar.xz|*.tbz2|*.tgz|*.txz|*.tar) - tar xvf "$n" ;; - *.lzma) unlzma ./"$n" ;; - *.bz2) bunzip2 ./"$n" ;; - *.cbr|*.rar) unrar x -ad ./"$n" ;; - *.gz) gunzip ./"$n" ;; - *.cbz|*.epub|*.zip) unzip ./"$n" ;; - *.z) uncompress ./"$n" ;; - *.7z|*.arj|*.cab|*.cb7|*.chm|*.deb|*.dmg|*.iso|*.lzh|*.msi|*.pkg|*.rpm|*.udf|*.wim|*.xar) - 7z x ./"$n" ;; - *.xz) unxz ./"$n" ;; - *.exe) cabextract ./"$n" ;; - *.cpio) cpio -id < ./"$n" ;; - *.cba|*.ace) unace x ./"$n" ;; - *) - echo "ex: '$n' - unknown archive method" - return 1 - ;; - esac - else - echo "'$n' - file does not exist" - return 1 - fi - done -fi + if [ -z "$1" ]; then + # display usage if no parameters given + echo "Usage: ex ." + echo " extract [path/file_name_2.ext] [path/file_name_3.ext]" + else + for n in "$@"; do + if [ -f "$n" ]; then + case "${n%,}" in + *.cbt | *.tar.bz2 | *.tar.gz | *.tar.xz | *.tbz2 | *.tgz | *.txz | *.tar) + tar xvf "$n" + ;; + *.lzma) unlzma ./"$n" ;; + *.bz2) bunzip2 ./"$n" ;; + *.cbr | *.rar) unrar x -ad ./"$n" ;; + *.gz) gunzip ./"$n" ;; + *.cbz | *.epub | *.zip) unzip ./"$n" ;; + *.z) uncompress ./"$n" ;; + *.7z | *.arj | *.cab | *.cb7 | *.chm | *.deb | *.dmg | *.iso | *.lzh | *.msi | *.pkg | *.rpm | *.udf | *.wim | *.xar) + 7z x ./"$n" + ;; + *.xz) unxz ./"$n" ;; + *.exe) cabextract ./"$n" ;; + *.cpio) cpio -id <./"$n" ;; + *.cba | *.ace) unace x ./"$n" ;; + *) + echo "ex: '$n' - unknown archive method" + return 1 + ;; + esac + else + echo "'$n' - file does not exist" + return 1 + fi + done + fi } function ensure { - if [ -z "$1" ]; then - echo "Usage: ensure " - else - if ! command -v $1 &> /dev/null - then - echo "$1 could not be found" - fi - fi + if [ -z "$1" ]; then + echo "Usage: ensure " + else + if ! command -v $1 &>/dev/null; then + echo "$1 could not be found" + fi + fi +} + +function htd { + echo "$((0x$1))" +} + +function b2d { + echi "obase=10; ibase=2; $1" | bc +} + +function h2d { + echi "obase=10; ibase=16; $1" | bc +} + +function b2h { + echi "obase=16; ibase=2; $1" | bc +} + +function h2b { + echi "obase=2; ibase=16; $1" | bc +} + +function d2h { + echi "obase=16; ibase=10; $1" | bc +} + +function d2b { + echi "obase=2; ibase=10; $1" | bc }