diff --git a/aliases.sh b/aliases.sh index 359a721..32ccde1 100644 --- a/aliases.sh +++ b/aliases.sh @@ -67,7 +67,7 @@ alias ssh='ssh -o ServerAliveInterval=30' alias free='free -h' alias diff='diff --color' alias mkdir='mkdir -p' -alias rsync='rsync -varuh --progress' +alias rsync='rsync -varuch --progress' alias perl-rename='perl-rename -v' alias pip='pip3' alias python='python3' @@ -103,6 +103,8 @@ alias docker-limpiar='sudo docker system prune -a' alias docker-clean='docker-limpiar' alias añadir-fuentes='font-add' alias tiempo='/usr/bin/t' +alias untar='tar -xvf' +alias untargz='tar -xvzf' ## Monerías @@ -358,13 +360,29 @@ Ejemplos: md ayuda" } +# Obtiene directorio padre + +parent () { + if [ $# -eq 0 ]; then curr="$PWD" else curr=$1 fi + echo $(python3 -c """ +from pathlib import Path +print(Path('$curr').resolve().parent) + """) + unset curr +} + ## Desactiva o activa virtualenv check-venv () { - type deactivate &>/dev/null && deactivate - if [ -f "$VENV/bin/activate" ]; then - source $VENV/bin/activate + if [ $# -eq 0 ]; then curr="$PWD" else curr=$1 fi + if [ -f "$curr/$VENV/bin/activate" ]; then + source $curr/$VENV/bin/activate + elif [[ $(parent $1) != "/" ]]; then + check-venv $(parent $1) + else + type deactivate &>/dev/null && deactivate fi + unset curr } check-venv # Ejecuta cuando se carga