
Responder1
Que bom que você conseguiu sair dessa. No futuro, como você estiver usando WSL, lembre-se de que também terá as seguintes opções de recuperação.
No PowerShell, CMD ou no menu Iniciar:
wsl -e bash --norc --noprofile
Isso iniciará o WSL e executará o Bash sem processar nenhum arquivo de inicialização, como ~/.bashrc
(e outros). A partir daí, você pode inspecionar e corrigir quaisquer arquivos de inicialização ou outros problemas. Normalmente, esse é o melhor mecanismo de recuperação para esse tipo de problema.
Você pode até editar .bashrc
diretamente sem iniciar o shell com:
wsl -d Ubuntu20.04_WSL2 -e editor /home/<username>/.bashrc
Nota: O editor
comando é mapeado para o “editor preferido” no Ubuntu ( nano
por padrão). Em algumas outras distribuições, pode ser necessário especificar o próprio nome do editor (por exemplo, vi
). Você pode alterar o editor padrão com sudo update-alternatives --config editor
.
Finalmente:
wsl -u root
Isso acessará o WSL como usuário root, onde você poderá editar seus arquivos de usuário. Observe que se houver um erro em /etc/profile
(ou nos .d
subdiretórios), isso ainda não funcionará, pois o usuário root experimentará o mesmo erro. É por isso que tendo a preferir a --noprofile --norc
opção.
Além disso, a partir dos comentários:
Não consigo abrir o bashrc
Duas opções aí:
Como @terdon mencionou nos comentários, você pode pelo menos visualizar o arquivo usando o File Explorer no Windows para navegar
\\wsl$\Ubuntu\home\<username>\
(ou o nome da distribuição que você está usando, pode ter um número de versão).Observe que eu não recomendoediçãoo arquivo usando um aplicativo do Windows, a menos que você tenha certeza de que o aplicativo respeitará os finais de linha do Linux/Unix. Alguns aplicativos (versões mais antigas do Bloco de Notas, por exemplo) irão "corromper" o arquivo (pelo menos da perspectiva do Bash) alterando os finais de linha para CRLFs do DOS/Windows.
Ou, do PowerShell:
wsl -e cat /home/<username>/.bashrc | clip.exe
Isso irá copiá-lo diretamente para a área de transferência para que você possa colar quaisquer partes relevantes em sua pergunta na próxima vez.
Por favor, não poste imagens de texto. Basta copiar/colar o texto diretamente na sua pergunta
Também é possível apenas destacar o texto diretamente no terminal que você colocou na captura de tela e colá-lo na pergunta.
Eu poderiaaindapeça que você faça isso (se ainda não corrigiu totalmente o erro), pois isso pode ajudar outras pessoas a encontrar sua dúvida ao pesquisar na web. As imagens, é claro, nem sempre são indexadas. Veraquipor razões adicionais pelas quais pedimos que você evite capturas de tela quando o texto for suficiente.
Responder2
Pressionar Ctr+C resolverá o problema.