Golpeando el mismo problema en Fedora 33. Esto parece debido a que tiene un alias definido para sudo
en mi entorno:
$ alias sudo
alias sudo='\sudo '
Debido a esto, de alguna manera bash resuelve los alias pasados como argumentos a sudo
alias, como se muestra en el siguiente ejemplo:
$ alias foo='echo foo'
$ sudo foo
foo
Hubiera esperado tener esto en su lugar:
$ sudo foo
$ sudo: foo: command not found
Eliminar este alias funcionó para mí. Este alias fue creado por /usr/local/bin/alias.sh
, parte de synth-shell
proyecto (https://github.com/andresgongora/synth-shell)
Como @scy mencionó, eliminar el alias de vi y vim es una solución alternativa para mantener el alias sudo="sudo " para que pueda usarse con otros alias.
Ampliando su respuesta para los diferentes caparazones:
Concha ZSH: Agregar a .zshrc archivo (del usuario que desea que se vea afectado por los cambios)
- ubicado en:
Para estación de trabajo Fedora 33 (o servidor u otra distribución de SO no atómica):/home/$USER/.zshrc
Para Fedora CoreOS 33.x (o Silverblue 33 u otra distribución de sistema operativo atómico similar):/var/home/$USER/.zshrc
- las siguientes líneas de código:
[ "$(type -w vi)" = 'vi: alias' ] && unalias vi
[ "$(type -w vim)" = 'vim: alias' ] && unalias vim
Concha BASH: Agregar a .bashrc archivo (del usuario que desea que se vea afectado por los cambios)
- ubicados en las mismas ubicaciones, correspondientes a la ubicación específica del sistema operativo/distribución para el directorio de inicio de $USER (verifique las instrucciones para Fedora Workstation, etc.)
- el siguiente código:
[ "$(type -t vi)" = 'alias' ] && unalias vi
[ "$(type -t vim)" = 'alias' ] && unalias vim
PD Acerca de ZSH Shell , esta solución puede resolver problemas similares con otras aplicaciones CLI que se encuentran en una situación de inicialización similar. Por ejemplo:mc (Comandante de medianoche). Mientras tanto, mc no tendrá ningún problema de este tipo en BASH Shell .