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.