Наша компания использует систему Red Hat Linux и выделяет каждому аккаунт в / home. К сожалению, наша система использует tsch, что мне не выгодно. Более того, поскольку у меня нет разрешения суперпользователя, я не могу использовать команду chsh для перехода на bash для себя. Еще хуже, ypchsh также недоступен для меня. Итак, наконец, я добавляю следующие строки в .cshrc:
bash
echo $0
и сконфигурируйте .bashrc соответствующим образом (копирование из оригинального .cshrc и исправление необходимой синтаксической ошибки). Теперь кажущаяся оболочка становится bash (как видно из команды «echo $ 0»).
Теперь возникает проблема:
Когда я использую vim для редактирования файла cpp (например, Hello_World) и использую «:! G ++ -g Hello_World.cpp -o hw.out» в vim для компиляции файла, результат не будет отображаться, и vim завершается с отображается bash (например, когда терминал открыт), но без обычного нажатия клавиши, чтобы вернуться к моей работе в vim. В папке Hello_World.cpp есть файл .Hello_World.cpp.swp, но не hw.out. Когда vim Hello_World.cpp снова, оказывается, что этот файл cpp был открыт.
Тем не менее, если я g ++ файл cpp в папке, но не использую vim и:!, Все в порядке. По факту, :! теперь кажется незаконным для VIM.
Если я использую оригинальный tcsh, все также в порядке.
Как я могу исправить эту любопытную ошибку?
Спасибо за вашу помощь заранее.
цин
Кстати: я предпочитаю bash tcsh в первую очередь из-за удобства HISTIGNORE и HISTCONTROL, хотя tcsh также имеет настройку Histdup.
Я нашел следующее немного полезным, но все еще не удовлетворяющим моей проблеме.
chsh
чтобы изменить вашу регистрационную оболочку.