Terminal quebrado


24

Recebi esta mensagem na Terminal.appinicialização

dyld: Library not loaded: /usr/local/opt/gdbm/lib/libgdbm.4.dylib
  Referenced from: /usr/local/bin/zsh
  Reason: image not found

[Process completed]

Encontrei alguns links sobre esse problema.

Mas o problema é que não consigo executar o aplicativo de terminal, portanto, não é possível tentar brew doctorou outras opções.

Não é possível reinstalar Terminal app, outro aplicativo de terminal (iTerm2) não está sendo executado.

Existe uma maneira de corrigir esse problema sem reinstalar o OSX?

Respostas:


23
  1. Escolha Shell → Novo comando….

  2. Execute chsh -s /bin/bashe certifique-se de selecionar 'Executar comando dentro de um shell'.

  3. Digite a senha da sua conta de usuário no prompt para alterar seu shell novamente para / bin / bash.


2
Uma solução semelhante pode ser feita a partir de iTerm2. Adicione um novo "Perfil", verifique se o "Comando" está definido em "Shell de login" como "Comando" e digite "/ bin / sh" como o comando (ou / bin / bash, qualquer coisa, exceto zsh). Vamos voltar à linha de comando e seguir a solução de @Robert J Berger abaixo.
Unapiedra

Eu era capaz de fazer isso e, em seguida, as etapas da resposta "fermentação" seguiam alterando meu shell de volta para zsh.
Bill Mote

36

Você está executando o zsh? Estou vendo um problema semelhante ao executar o iTerm2. Parece haver um problema com o zsh e não com o Terminal ou o iTerm2. Apenas começou a acontecer comigo.

Se você instalou o zsh com o Homebrew e está com esse problema, o que funcionou para mim foi:

brew reinstall zsh && brew unlink zsh && brew link zsh

Se você não instalou o zsh com o Homebrew, ignore isso :-)


4

Mais fácil, eu acho:
Baixe o iTerm2 e brew update && brew upgrade zshfuncionou para mim ;-)


É fácil quando você não pode iniciar um terminal :)
megas

@megas Na verdade, eu usei iTerm2 (esqueci de mencionar isso!) :)
Joël

O OP já disse na pergunta que "outro aplicativo de terminal (iTerm2) não está sendo executado"
grg

Nesse caso, talvez tentando github.com/zeit/hyper terminal poderia ajudar
Joël

3

Para poder consertar meu terminal / iterm2 / hyper (todos foram interrompidos por causa do zsh quebrado), primeiro tive que alterar as configurações do terminal 'Shells open with' de um comando personalizado para o shell de login padrão

insira a descrição da imagem aqui

O truque do @grg não funcionou para mim. Com essas alterações, fui capaz de atualizar meu zsh via homebrew, conforme sugerido nas outras respostas, e os três aplicativos funcionaram como esperado novamente.


2

Depois de procurar por um tempo, isso resolveu para mim:

brew reinstall ncurses

1
É fácil quando você pode começar um terminal :)
megas

No terminal, você pode executar um comando com as teclas de atalho Shift + Command + N.
SilentGuy 2/12
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.