From 1a0beb49996d8523245f4713e9b63bea4f8bf9c8 Mon Sep 17 00:00:00 2001 From: TheK4n Date: Wed, 13 Oct 2021 22:37:44 +0300 Subject: [PATCH] ref extract func --- .bash_aliases | 4 ++-- .bash_functions | 53 +++++++++++++++++++++++++++++-------------------- 2 files changed, 33 insertions(+), 24 deletions(-) diff --git a/.bash_aliases b/.bash_aliases index 2c1c16a..5267820 100644 --- a/.bash_aliases +++ b/.bash_aliases @@ -83,6 +83,6 @@ alias music='mplayer -shuffle ~/Music/*' # python # initializes first ./*/*/activate -# alias va='source "$(find -P . -maxdepth 3 -mindepth 3 -type f -name activate | sort | head -n 1)" &>/dev/null || echo "error: virtual env not found, use python3 -m virtualenv venv" >&2' -alias ve='python3 -m virtualenv venv' +# alias va='source "$(find -P . -maxdepth 3 -type f -name activate | sort | head -n 1)" &>/dev/null || echo "error: virtual env not found, use python3 -m virtualenv venv" >&2' +alias ve='python3 -m virtualenv venv && . venv/bin/activate' alias vd='deactivate' diff --git a/.bash_functions b/.bash_functions index 092d7dc..7e2d5fc 100644 --- a/.bash_functions +++ b/.bash_functions @@ -72,32 +72,41 @@ va() { fi } -# classic archive extractor + extract () { - if [ -f "$1" ] ; then - case "$1" in - *.tar.bz2) tar xvjf "$1" ;; - *.tar.gz) tar xvzf "$1" ;; - *.bz2) bunzip2 "$1" ;; - *.rar) unrar x "$1" ;; - *.gz) gunzip "$1" ;; - *.tar) tar xvf "$1" ;; - *.tbz2) tar xvjf "$1" ;; - *.tgz) tar xvzf "$1" ;; - *.zip) unzip "$1" ;; - *.Z) uncompress "$1" ;; - *.7z) 7z x "$1" ;; - *) echo "'$1' cannot be extracted via $0" >&2; return 1;; - esac + if [ -z "$1" ]; then # if string non-zero + # display usage if no parameters given + echo "Usage: extract ." else - echo "'$1' is not a valid file" >&2 - return 1 + if [ -f "$1" ] ; then # if file exists + NAME=${1%.*} # + mkdir "$NAME" && cd "$NAME" || return + + case $1 in + *.tar.bz2) tar xvjf ../"$1" ;; + *.tar.gz) tar xvzf - ../"$1" ;; + *.tar.xz) tar xvJf ../"$1" ;; + *.lzma) unlzma ../"$1" ;; + *.bz2) bunzip2 ../"$1" ;; + *.rar) unrar x -ad ../"$1" ;; + *.gz) gunzip ../"$1" ;; + *.tar) tar xvf - ../"$1" ;; + *.tbz2) tar xvjf ../"$1" ;; + *.tgz) tar xvzf ../"$1" ;; + *.zip) unzip ../"$1" ;; + *.Z) uncompress ../"$1" ;; + *.7z) 7z x ../"$1" ;; + *.xz) unxz ../"$1" ;; + *.exe) cabextract ../"$1" ;; + *) echo "extract: '$1' - unknown archive method" ;; + esac + else + echo "$1 - file does not exist" + fi fi } + mcd () { - - mkdir -p $1 - cd $1 - + mkdir -p "$1" && cd "$1" || return }