Comme décrit ici, vous pouvez utiliser
ssh -t [email protected] bash --noprofile
en fait, comme le suggère @JoL, vous n'avez même pas besoin du --noprofile , car lorsque ssh exécute bash comme une simple commande, il n'est pas considéré comme un shell de connexion. Exécution de ssh -t [email protected] bash ne lira que les fichiers RC ; et exécutant ssh -t [email protected] bash --norc ne les lira même pas.
Essayez de vous connecter en SSH et exécutez sh au lieu de bash , par exemple
ssh [email protected] sh
Puis renommer (mv ) ou modifier le fichier cassé (ex/vi ).
Exécutez ssh -t host vi .bash_profile (ou l'éditeur de votre choix à la place de vi ) et corrigez votre .bash_profile .
(Le -t option peut ne pas être nécessaire, selon l'éditeur que vous choisissez.)
Si vous savez exactement ce qui doit être corrigé, vous pourrez peut-être le réparer de manière non interactive. Par exemple, quelque chose comme
printf 's/exec foo/. foo/\nwq\n' ssh host ed .bash_profile