permanentes - El comando shopt no se encuentra en.bashrc después de la actualización del shell
personalizar prompt ubuntu (6)
He actualizado mi shell a ZSH. Cuando me fuente ~ / .bashrc. Estoy recibiendo este error
Hubo algún error en tu doctor. cuando ejecuto este comando
echo "export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules" >> ~/.bashrc && source ~/.bashrc
/home/amerrnath/.bashrc:17: command not found: shopt /home/amerrnath/.bashrc:25: command not found: shopt /home/amerrnath/.bashrc:109: command not found: shopt /usr/share/bash-completion/bash_completion:35: parse error near
]] ''
Por favor ayúdame a resolver este problema
Haz un alias de shopt y llámalo tirado zsh
Una solución rápida se describe aquí: https://github.com/larz258/Zshopt
sudo vi /usr/bin/shopt
Dentro de la tienda
#!/bin/bash
args='''';
for item in $@
do
args="$args $item";
done
shopt $args;
hazlo ejecutable
sudo chmod +x /usr/bin/shopt
Crea un alias en tu .zshrc
echo "alias shopt=''/usr/bin/shopt''" >> ~/.zshrc
Para colocar cualquier cosa en ~ / .bashrc:
Cambiar a bash:
exec bash
Entonces
source ~/.bashrc
Cambiar a bash no tendrá efecto en la nueva ventana de terminal. Pero si quieres cambiar la ventana actual a zsh.
Cambia a zsh:
exec zsh
reference
Por alguna razón, después de la actualización de 16.04 a 17.10 y a 18.04, el enlace simbólico / bin / sh se configuró de nuevo para que se ejecutara el dash no bash. Actualizando este enlace:
sudo cd /bin && ln -sf bash sh
resuelto este problema para mi
Su archivo bashrc
fue escrito para bash
. zsh
no es bash
.
Estoy sorprendido de que zsh
esté intentando cargar tu .bashrc
en absoluto.
Si no lo está y lo está obteniendo manualmente (desde .profile
o similar). Para de hacer eso.
Luego puedes escribir un archivo de inicio zsh
apropiado.
Si desea usar zsh
entonces necesita usar zsh
y no bash
.
shopt
es un bash-ismo.
[[
es un bash-ismo.
zsh usa el perfil de env ~/.zshrc
, no ~/.bashrc
.
por lo que necesita agregar la configuración de env al archivo .zshrc y luego
source ~/.zshrc
Debe funcionar.
shopt
no es un comando, sino un shell incorporado. bash
sabe qué hacer con él porque es un bash
incorporado, pero zsh no tiene idea de qué es. Usted querrá ver en setopt
que es un zsh
incorporado, y poner esos valores en un nuevo script .zshrc.