Soporte para bash
This commit is contained in:
parent
5b1d745621
commit
f45c514794
180
aliases.sh
180
aliases.sh
|
@ -1,8 +1,13 @@
|
||||||
# Alias
|
# Aliases
|
||||||
|
|
||||||
## Variables de ambiente
|
## Variables de ambiente
|
||||||
|
|
||||||
VENV=.venv
|
VENV=.venv
|
||||||
|
FONT_DIR=$HOME/.fonts
|
||||||
|
OZSH_ALIAS=$HOME/.oh-my-zsh/custom/aliases.zsh
|
||||||
|
BASH_ALIAS=$HOME/.bash_aliases
|
||||||
|
RLOC_ALIAS=$HOME/Repositorios/aliases/aliases.sh
|
||||||
|
REPO_ALIAS=https://gitlab.com/perrotuerto_personal/codigo/aliases/-/raw/no-masters/aliases.sh
|
||||||
|
|
||||||
## Eliminación de alias previos
|
## Eliminación de alias previos
|
||||||
|
|
||||||
|
@ -78,7 +83,6 @@ alias rastrear-todo='find / -iname'
|
||||||
alias trace-all='rastrear-todo'
|
alias trace-all='rastrear-todo'
|
||||||
alias copiar='xclip -selection clipboard <'
|
alias copiar='xclip -selection clipboard <'
|
||||||
alias copy='copiar'
|
alias copy='copiar'
|
||||||
alias recargar='source $HOME/.zshrc'
|
|
||||||
alias refresh='recargar'
|
alias refresh='recargar'
|
||||||
alias install='instalar'
|
alias install='instalar'
|
||||||
alias uninstall='desinstalar'
|
alias uninstall='desinstalar'
|
||||||
|
@ -108,27 +112,36 @@ alias acuario='asciiquarium'
|
||||||
alias tren='sl'
|
alias tren='sl'
|
||||||
alias fantasma='oneko &'
|
alias fantasma='oneko &'
|
||||||
|
|
||||||
## Detecta tipo de distribución
|
## Funciones
|
||||||
|
|
||||||
|
### Detecta tipo de distribución
|
||||||
|
|
||||||
distro-name () {
|
distro-name () {
|
||||||
DIST_NAME=$(awk -F= '/^NAME/{print $2}' /etc/os-release)
|
echo $(awk -F= '/^NAME/{print $2}' /etc/os-release) | sed 's/"//g'
|
||||||
echo $DIST_NAME | sed 's/"//g'
|
|
||||||
}
|
}
|
||||||
|
|
||||||
## Actualizador
|
### Imprime errores
|
||||||
|
|
||||||
|
echo-error () {
|
||||||
|
echo "ERROR: $1"
|
||||||
|
return 1
|
||||||
|
}
|
||||||
|
|
||||||
|
### Actualizador
|
||||||
|
|
||||||
actualizar () {
|
actualizar () {
|
||||||
DIST=$(distro-name)
|
|
||||||
case $1 in
|
case $1 in
|
||||||
alias | aliases)
|
alias | aliases)
|
||||||
echo "Actualizando alias"
|
echo "Actualizando alias"
|
||||||
curl -o $HOME/.oh-my-zsh/custom/aliases.zsh \
|
curl -o $BASH_ALIAS $REPO_ALIAS
|
||||||
https://gitlab.com/perrotuerto_personal/codigo/aliases/-/raw/no-masters/aliases.sh
|
if [ -f "$OZSH_ALIAS" ]; then
|
||||||
|
cp $BASH_ALIAS $OZSH_ALIAS
|
||||||
|
fi
|
||||||
recargar
|
recargar
|
||||||
;;
|
;;
|
||||||
paquetes | packages)
|
paquetes | packages)
|
||||||
echo "Actualizando paquetes"
|
echo "Actualizando paquetes"
|
||||||
if [[ ${DIST} = "Arch Linux" ]]; then
|
if [[ $(distro-name) = "Arch Linux" ]]; then
|
||||||
sudo pacman -Syy
|
sudo pacman -Syy
|
||||||
sudo pacman -S archlinux-keyring
|
sudo pacman -S archlinux-keyring
|
||||||
else
|
else
|
||||||
|
@ -137,13 +150,23 @@ actualizar () {
|
||||||
;;
|
;;
|
||||||
todo | sistema | all | system)
|
todo | sistema | all | system)
|
||||||
echo "Actualizando sistema"
|
echo "Actualizando sistema"
|
||||||
if [[ ${DIST} = "Arch Linux" ]]; then
|
if [[ $(distro-name) = "Arch Linux" ]]; then
|
||||||
yay -Su
|
yay -Su
|
||||||
else
|
else
|
||||||
sudo apt upgrade
|
sudo apt upgrade
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
-h | --help | help | ayuda)
|
-h | --help | help | ayuda)
|
||||||
|
actualizar-help ;;
|
||||||
|
*)
|
||||||
|
actualizar alias
|
||||||
|
actualizar paquetes
|
||||||
|
actualizar sistema
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
actualizar-help () {
|
||||||
echo "actualizar: utilidad para hacer actualizaciones.
|
echo "actualizar: utilidad para hacer actualizaciones.
|
||||||
|
|
||||||
Uso:
|
Uso:
|
||||||
|
@ -162,31 +185,22 @@ Ejemplos:
|
||||||
actualizar -h
|
actualizar -h
|
||||||
actualizar todo
|
actualizar todo
|
||||||
actualizar"
|
actualizar"
|
||||||
;;
|
|
||||||
*)
|
|
||||||
actualizar alias
|
|
||||||
actualizar paquetes
|
|
||||||
actualizar sistema
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
}
|
||||||
|
|
||||||
## Instalador
|
### Instalador
|
||||||
|
|
||||||
instalar (){
|
instalar (){
|
||||||
DIST=$(distro-name)
|
if [[ $(distro-name) = "Arch Linux" ]]; then
|
||||||
if [[ ${DIST} = "Arch Linux" ]]; then
|
|
||||||
yay -Syy $@
|
yay -Syy $@
|
||||||
else
|
else
|
||||||
sudo apt install $@
|
sudo apt install $@
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
## Desinstalador
|
### Desinstalador
|
||||||
|
|
||||||
desinstalar (){
|
desinstalar (){
|
||||||
DIST=$(distro-name)
|
if [[ $(distro-name) = "Arch Linux" ]]; then
|
||||||
if [[ ${DIST} = "Arch Linux" ]]; then
|
|
||||||
yay -Rss $@
|
yay -Rss $@
|
||||||
else
|
else
|
||||||
sudo apt purge $@
|
sudo apt purge $@
|
||||||
|
@ -195,26 +209,51 @@ desinstalar (){
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
## Gestión de alias
|
### Gestión de alias
|
||||||
|
|
||||||
aliases () {
|
aliases () {
|
||||||
ALIAS_FILE=~/.oh-my-zsh/custom/aliases.zsh
|
|
||||||
case $1 in
|
case $1 in
|
||||||
|
actualizar | update)
|
||||||
|
actualizar aliases
|
||||||
|
;;
|
||||||
ver | see)
|
ver | see)
|
||||||
c $ALIAS_FILE
|
echo $OZSH_ALIAS
|
||||||
|
c $OZSH_ALIAS
|
||||||
;;
|
;;
|
||||||
editar | edit)
|
editar | edit)
|
||||||
v $ALIAS_FILE
|
v $OZSH_ALIAS
|
||||||
|
;;
|
||||||
|
enlazar | link)
|
||||||
|
if [ -f "$RLOC_ALIAS" ]; then
|
||||||
|
if [ -f "$OZSH_ALIAS" ]; then
|
||||||
|
ln -fs $RLOC_ALIAS $OZSH_ALIAS
|
||||||
|
else
|
||||||
|
ln -fs $RLOC_ALIAS $BASH_ALIAS
|
||||||
|
fi
|
||||||
|
recargar
|
||||||
|
else
|
||||||
|
echo-error "no se encontró archivo '$RLOC_ALIAS' para copia."
|
||||||
|
fi
|
||||||
;;
|
;;
|
||||||
-h | --help | help | ayuda)
|
-h | --help | help | ayuda)
|
||||||
|
aliases-help ;;
|
||||||
|
*)
|
||||||
|
alias
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
aliases-help () {
|
||||||
echo "aliases: utilidad para hacer gestionar alias.
|
echo "aliases: utilidad para hacer gestionar alias.
|
||||||
|
|
||||||
Uso:
|
Uso:
|
||||||
aliases [OPT]
|
aliases [OPT]
|
||||||
|
|
||||||
Opciones:
|
Opciones:
|
||||||
ver | see Muestra contenido de archivo de alias.
|
actualizar | update Actualiza aliases.
|
||||||
editar | edit Edita alias.
|
ver | see Muestra contenido de archivo de aliases.
|
||||||
|
editar | edit Edita aliases.
|
||||||
|
enlazar | link Genera enlace simbólico entre repo 'aliases' y archivo de aliases.
|
||||||
-h | --help | help | ayuda Despliega esta ayuda.
|
-h | --help | help | ayuda Despliega esta ayuda.
|
||||||
vacío Uso regular de 'alias'.
|
vacío Uso regular de 'alias'.
|
||||||
|
|
||||||
|
@ -223,36 +262,21 @@ Ejemplos:
|
||||||
aliases editar
|
aliases editar
|
||||||
aliases -h
|
aliases -h
|
||||||
aliases"
|
aliases"
|
||||||
;;
|
|
||||||
*)
|
|
||||||
alias
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
}
|
}
|
||||||
|
|
||||||
### Un árbol que es a tree lo que lsd es a ls
|
### Recarga aliases
|
||||||
|
|
||||||
tre () {
|
recargar () {
|
||||||
DEPTH=1000
|
if [ -f "$OZSH_ALIAS" ]; then
|
||||||
DIR="."
|
source $HOME/.zshrc
|
||||||
if [ -d "${@:$#}" ]; then
|
else
|
||||||
DIR="${@:$#}"
|
source $HOME/.bashrc
|
||||||
fi
|
fi
|
||||||
while getopts ":L:" opt; do
|
|
||||||
case $opt in
|
|
||||||
L) DEPTH=$OPTARG
|
|
||||||
;;
|
|
||||||
\?) echo "Opción inválida -$OPTARG" >&2
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
lsd -l --tree --size=short --blocks=size,name --depth=$DEPTH $DIR
|
|
||||||
}
|
}
|
||||||
|
|
||||||
## Instalador de fuentes
|
## Instalador de fuentes
|
||||||
|
|
||||||
font-add () {
|
font-add () {
|
||||||
FONT_DIR=$HOME/.fonts
|
|
||||||
if [ ! -d "$FONT_DIR" ]; then
|
if [ ! -d "$FONT_DIR" ]; then
|
||||||
mkdir $FONT_DIR
|
mkdir $FONT_DIR
|
||||||
fi
|
fi
|
||||||
|
@ -287,8 +311,12 @@ md () {
|
||||||
leer | read | ver | cat | c)
|
leer | read | ver | cat | c)
|
||||||
glow -w 80 -p $2 ;;
|
glow -w 80 -p $2 ;;
|
||||||
-h | --help | help | ayuda)
|
-h | --help | help | ayuda)
|
||||||
echo "
|
md-help ;;
|
||||||
md: utilidad para hacer gestionar archivos Markdown.
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
md-help () {
|
||||||
|
echo "md: utilidad para hacer gestionar archivos Markdown.
|
||||||
|
|
||||||
Uso:
|
Uso:
|
||||||
md [OPT]
|
md [OPT]
|
||||||
|
@ -302,49 +330,52 @@ Opciones:
|
||||||
Ejemplos:
|
Ejemplos:
|
||||||
md formatear archivo.md
|
md formatear archivo.md
|
||||||
md convertir archivo.md a archivo.html
|
md convertir archivo.md a archivo.html
|
||||||
md ayuda
|
md ayuda"
|
||||||
" ;;
|
|
||||||
esac
|
|
||||||
}
|
}
|
||||||
|
|
||||||
## Desactiva o activa virtualenv
|
## Desactiva o activa virtualenv
|
||||||
|
|
||||||
check_venv () {
|
check-venv () {
|
||||||
VENV_ACT=$VENV/bin/activate
|
|
||||||
type deactivate &>/dev/null && deactivate
|
type deactivate &>/dev/null && deactivate
|
||||||
if [ -f "$VENV_ACT" ]; then
|
if [ -f "$VENV/bin/activate" ]; then
|
||||||
source $VENV_ACT
|
source $VENV/bin/activate
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
check_venv # Ejecuta cuando se carga
|
check-venv # Ejecuta cuando se carga
|
||||||
|
|
||||||
## Agrega y arranca virtualenv
|
## Agrega y arranca virtualenv
|
||||||
|
|
||||||
venv () {
|
venv () {
|
||||||
virtualenv $VENV
|
virtualenv $VENV
|
||||||
check_venv
|
check-venv
|
||||||
}
|
}
|
||||||
|
|
||||||
## Modifica comportamiento de cd
|
## Modifica comportamiento de cd
|
||||||
|
|
||||||
cd () {
|
cd () {
|
||||||
builtin cd $1
|
builtin cd $1
|
||||||
check_venv
|
check-venv
|
||||||
}
|
}
|
||||||
|
|
||||||
## Embellece y verifica código
|
## Embellece y verifica código
|
||||||
|
|
||||||
pymp () {
|
pymp () {
|
||||||
FORMAT=false
|
|
||||||
CHECK=true
|
|
||||||
case $1 in
|
case $1 in
|
||||||
-f | formatear | format)
|
-f | formatear | format)
|
||||||
black --line-length 80 ${@:$#} ;;
|
black --line-length 80 ${@:$#} ;;
|
||||||
-h | --help | help | ayuda)
|
-h | --help | help | ayuda)
|
||||||
CHECK=false
|
pymp-help ;;
|
||||||
echo "
|
esac
|
||||||
pymp: utilidad para enchular código de Python.
|
if [ ! -d "${@:$#}" ] && [ ! -f "${@:$#}" ]; then
|
||||||
|
echo-error "último argumento debe ser un fichero existente."
|
||||||
|
fi
|
||||||
|
flake8 --max-line-length 80 ${@:$#}
|
||||||
|
vulture ${@:$#}
|
||||||
|
}
|
||||||
|
|
||||||
|
pymp-help () {
|
||||||
|
echo "pymp: utilidad para enchular código de Python.
|
||||||
|
|
||||||
Uso:
|
Uso:
|
||||||
pymp [OPT] [FILE|DIR]
|
pymp [OPT] [FILE|DIR]
|
||||||
|
@ -356,15 +387,6 @@ Opciones:
|
||||||
Ejemplos:
|
Ejemplos:
|
||||||
pymp archivo.py
|
pymp archivo.py
|
||||||
pymp formatear .
|
pymp formatear .
|
||||||
pymp ayuda
|
pymp ayuda"
|
||||||
" ;;
|
return 0
|
||||||
esac
|
|
||||||
if [ ! -d "${@:$#}" ] && [ ! -f "${@:$#}" ]; then
|
|
||||||
echo "ERROR: último argumento debe ser un fichero, ¿lo escribiste correctamente?"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
if [ "$CHECK" = true ]; then
|
|
||||||
flake8 --max-line-length 80 ${@:$#}
|
|
||||||
vulture ${@:$#}
|
|
||||||
fi
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue