![Uso global de 'alias' en Debian 10](https://rvso.com/image/756221/Uso%20global%20de%20'alias'%20en%20Debian%2010.png)
He intentado agregar el uso global de alias en mi instancia de Debian 10 sin suerte.
Lo que ya intenté es agregar mis alias a /etc/bash.bashrc y agregar este fragmento a /etc/profile para obtenerlo sin que funcione.
if [ -f /etc/bash.bashrc ]; then . /etc/bash.bashrc fi
En mi bash.bashrc:
#Aliases
alias l='ls -la'
alias ll='ls -l'
alias la='ls -a'
EDITAR*
¿Cómo creo un alias para "ls"? Por ejemplo, ls='ls -CF'. ¿Como cuando lo uso como alias no funciona?
Respuesta1
Debian debería funcionar con /etc/bash.bashrc. Verifique /etc/passwd
y asegúrese de que el usuario esté usando bash shell.
user1:x:1000:1000:User 1:/home/user1:/bin/bash
user2:x:1001:1001:User 2:/home/user2:/bin/zsh
De forma predeterminada, agregar usuarios con useradd o adduser los creará con bash como shell, pero es posible que esto se haya modificado a otro shell (zsh es muy popular). En el ejemplo anterior, el usuario1 usa bash shell y el usuario2 usa zsh. El usuario2 no ejecutará /etc/bash.bashrc al iniciar sesión.
Respuesta2
Mirando mi ~/.bashrc
puedo ver ls
que ya está definido como alias ls='ls --color=auto'
.
Agregar una nueva ls
definición de alias a /etc/bash.bashrc
as alias ls='ls -CF'
no ayuda porque, supongo, la definición ~/.bashrc
prevalece.
En mis pruebas, comentar el ls
alias definido en mi ~/.bashrc
habilitado a uno que agregué para la definición global para etc/bash.bashrc
que funcione.
Esto es un poco diferente a cómo Red Hat maneja el alias global, que le permite colocar sus alias globales, /etc/profile.d/[filename].sh
pero debido a la forma diferente en que están configurados Debian y Red Hat y la relación entre el perfil y los archivos bashrc, esto no parece ser una opción para Debian.
Con esto, quiero decir que Red Hat maneja archivos de perfil/bashrc al obtenerlos para que funcionen para varios shells/tipos de inicio de sesión (como se explica aquí).https://unix.stackexchange.com/questions/170493/login-non-login-and-interactive-non-interactive-shells). Sin embargo, para Debian parece que los archivos /etc/profile.d/*.sh
solo se obtienen para shells de inicio de sesión. Pero como mi respuesta anterior aquí fue eliminada, no pude editarla ni aclararla.
Para Debian, si desea que los alias globales funcionen sólo para shells de inicio de sesión, colóquelos, por ejemplo, /etc/profile.d/aliases.sh
. De lo contrario, parece que necesitas agregarlos a /etc/bash.bashrc
. Teniendo en cuenta que ~/.bashrc
tendrán prioridad los alias en. Si los alias que usted define no funcionan, entonces es probable que estén definidos en otro lugar y anulen el suyo.