%20sem%20desinstal%C3%A1-lo%3F.png)
Eu estava testando novos ambientes de desenvolvimento, incluindo zsh e oh-my-zsh. Agora que instalei o oh-my-zsh, ele inicia por padrão em meus terminais (iTerm2 e terminal) sempre iniciando com zsh e com as configurações ativadas em oh-my-zsh. Eu queria saber se era possível "desabilitar" ou parar de usar o zsh e sua configuração com oh-my-zsh sem ter que desinstalar o oh-my-zsh? Também seria bom saber como ativá-los novamente.
Atualmente, meus terminais entram no zsh automaticamente (eu acho) e usam oh-my-zsh automaticamente. Quero ter mais controle sobre isso e ser capaz de controlar ambos, quando o zsh está sendo usado e quando os recursos oh-my-zsh estão sendo usados.
Uma coisa que também estou interessado em saber é como os aplicativos de terminal sabem qual shell iniciar a execução na inicialização. Seria bom poder controlar também!
Se você explicar o máximo que puder sobre o "porquê" de cada comando que me der, isso seria útil! :)
Estou no OS X. Não tenho certeza se isso importa, mas tendo a gostar mais de respostas que sejam mais aplicáveis a ambientes Unix mais gerais do que aos meus.
Responder1
O texto da sua pergunta é ambíguo, então não sei dizer se você quer parar de usar zsh
ou quer parar de usar oh-my-zsh
. Vou cobrir ambos.
Desativandozsh
Basta executar chsh
e selecionar qualquer shell que você estava usando antes. Se você não sabe qual shell estava usando antes, é quase certo que é bash
. Este comando altera o "shell de login" associado ao seu usuário. Essencialmente, ele altera seu shell padrão.
Você precisará abrir uma nova janela de terminal para que as alterações tenham efeito. Se isso não funcionar, você precisará sair e fazer login novamente para reinicializar seu ambiente.
Desativando apenasoh-my-zsh
- Verifique se
~/.zshrc.pre-oh-my-zsh
existe. Provavelmente sim. (Este arquivo terá sido criado quando ooh-my-zsh
script de instalação tirou o anterior.zshrc
do caminho..zshrc
é um arquivo de inicialização dezsh
, semelhante a.bashrc
forbash
.) - Se isso acontecer, faça
mv ~/.zshrc ~/.zshrc.oh-my-zsh
. Isso colocará ooh-my-zsh
-created.zshrc
fora do caminho, para que possamos restaurar o original, fazendomv ~/.zshrc.pre-oh-my-zsh ~/.zshrc
. - Caso não exista, abra
~/.zshrc
em um editor de texto. Encontre a linha que dizsource $ZSH/.oh-my-zsh
e comente ou remova-a. Isso desativará a inicialização dooh-my-zsh
.
Você precisará reiniciar seu shell para que as alterações tenham efeito.
Responder2
Para definir manualmente um novo shell padrão, faça chsh -s /my/new/shell, por exemplo, chsh -s /bin/bash. Em seguida, basta reabrir seus shells.
Responder3
Como está um pouco escondido no @Gilles, responda a maneira rápida de carregar o zsh sem nenhuma configuração, por exemplo, .zshrc .zshenv etc.
zsh -f
Isso é útil quando você deseja testar se algo em sua configuração está impedindo o funcionamento de algum recurso do zsh.
Responder4
Você pode dizer ao zsh para carregar seus arquivos de configuração por usuário de um diretório diferente definindo a variável de ambienteZDOTDIR
antes de iniciar o zsh.
Se você deseja iniciar o zsh sem carregar seus arquivos de configuração, defina ZDOTDIR
um diretório inexistente. Se quiser pular os arquivos de configuração do sistema (além de /etc/zshenv
), você pode executar zsh -f
. Se você quiser ignorar os arquivos de configuração do sistema, mas executar os arquivos por usuário, execute zsh -d
.
Por exemplo, se você quiser testar oh-my-zsh sem torná-lo o padrão, não coloque from .zshrc
oh-my-zsh em seu diretório inicial. Em vez disso, coloque-o em outro lugar, por exemplo. in ~/.oh-my-zsh
e execute ZDOTDIR=~/.oh-my-zsh zsh
quando quiser usar oh-my-zsh.
Os aplicativos de terminal executam o shell indicado pela SHELL
variável de ambiente. Se esta variável não estiver definida, eles executam o shell de login indicado no banco de dados do usuário ( /etc/passwd
). Você pode solicitar um aplicativo diferente ao iniciar um emulador de terminal, por exemplo xterm -e fish
.