%20sin%20desinstalarlo%3F.png)
Estaba probando nuevos entornos de desarrollo, incluidos zsh y oh-my-zsh. Ahora que he instalado oh-my-zsh, se inicia de forma predeterminada en mis terminales (iTerm2 y terminal), siempre comienza con zsh y con la configuración activada desde oh-my-zsh. Me preguntaba si era posible "deshabilitar" o dejar de usar zsh y su configuración con oh-my-zsh sin tener que desinstalar oh-my-zsh. También sería bueno saber cómo volver a encenderlos.
Actualmente, mis terminales ingresan a zsh automáticamente (creo) y usan oh-my-zsh automáticamente. Quiero tener más control sobre eso y poder controlar ambos, cuándo se usa zsh y cuándo se usan las funciones oh-my-zsh.
Una cosa que también me interesa saber es cómo saben las aplicaciones de terminal qué shell comenzar a ejecutar al inicio. ¡Sería bueno poder controlarlo también!
Si explicas todo lo que puedas sobre el "por qué" de cada comando que me das, ¡sería útil! :)
Estoy en OS X. No estoy seguro si eso importa, pero me gustan más las respuestas que son más aplicables a entornos Unix más generales que al mío.
Respuesta1
La redacción de su pregunta es ambigua, por lo que no puedo decir si quiere decir que quiere dejar de consumir zsh
o quiere dejar de consumir oh-my-zsh
. Cubriré ambos.
Deshabilitarzsh
Simplemente ejecute chsh
y seleccione cualquier shell que estuviera usando antes. Si no sabes qué shell estabas usando antes, es casi seguro que sea bash
. Este comando cambia el "shell de inicio de sesión" asociado con su usuario. Básicamente, cambia su shell predeterminado.
Deberá abrir una nueva ventana de terminal para que los cambios surtan efecto. Si esto no funciona, deberá cerrar sesión y volver a iniciarla para reinicializar su entorno.
Desactivar solooh-my-zsh
- Comprobar si
~/.zshrc.pre-oh-my-zsh
existe. Probablemente sí. (Este archivo se habrá creado cuando eloh-my-zsh
script de instalación quitó el archivo anterior.zshrc
..zshrc
Es un archivo de inicio dezsh
, similar a.bashrc
forbash
). - Si es así, hazlo
mv ~/.zshrc ~/.zshrc.oh-my-zsh
. Esto eliminará eloh-my-zsh
-creado.zshrc
, para que podamos restaurar el original, haciendomv ~/.zshrc.pre-oh-my-zsh ~/.zshrc
. - Si no existe, ábralo
~/.zshrc
en un editor de texto. Busque la línea que dicesource $ZSH/.oh-my-zsh
y coméntela o elimínela. Esto deshabilitará la inicialización deoh-my-zsh
.
Deberá reiniciar su shell para que los cambios surtan efecto.
Respuesta2
Para configurar manualmente un nuevo shell predeterminado, haga chsh -s /my/new/shell, por ejemplo, chsh -s /bin/bash. Luego simplemente vuelve a abrir tus caparazones.
Respuesta3
Como está un poco oculto en @Gilles, responda la forma rápida de cargar zsh sin ninguna configuración, por ejemplo, .zshrc .zshenv, etc.
zsh -f
Esto es útil cuando desea probar si algo en su configuración impide que funcione alguna característica de zsh.
Respuesta4
Puede indicarle a zsh que cargue sus archivos de configuración por usuario desde un directorio diferente configurando la variable de entornoZDOTDIR
antes de iniciar zsh.
Si desea iniciar zsh sin cargar sus archivos de configuración, configúrelo ZDOTDIR
en un directorio inexistente. Si desea omitir los archivos de configuración del sistema (aparte de /etc/zshenv
), puede ejecutar zsh -f
. Si desea omitir los archivos de configuración del sistema pero ejecutar los archivos por usuario, ejecute zsh -d
.
Por ejemplo, si desea probar oh-my-zsh sin establecerlo como predeterminado, no coloque from .zshrc
oh-my-zsh en su directorio de inicio. En su lugar, colóquelo en otro lugar, por ejemplo. en ~/.oh-my-zsh
y luego ejecútelo ZDOTDIR=~/.oh-my-zsh zsh
cuando desee utilizar oh-my-zsh.
Las aplicaciones de terminal ejecutan el shell indicado por la SHELL
variable de entorno. Si esta variable no está configurada, ejecutan el shell de inicio de sesión indicado en la base de datos del usuario ( /etc/passwd
). Puede solicitar una aplicación diferente cuando inicia un emulador de terminal, por ejemplo xterm -e fish
.