Наша компанія використовує систему Linux з червоним капелюхом і розподіляє кожен рахунок в / вдома. На жаль, наша система використовує 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" in vim для компіляції файлу, результат не буде показаний, і vim закривається з "bash" показано (як коли відкрито термінал), але без звичного "натискання клавіші", щоб повернутися до моєї роботи in vim. У папці Hello_World.cpp є файл .Hello_World.cpp.swp, але не hw.out. Коли vim Hello_World.cpp знову, виявляється, що цей файл cpp був відкритий.
Однак якщо я g ++ файл cpp у папці, але не використовую vim та:!, Все гаразд. Фактично, :! тепер видається незаконним для vim.
Якщо я використовую оригінальний tcsh, все також нормально.
Як я можу виправити цю цікаву помилку?
Заздалегідь дякую за добру допомогу
цин
BTW: Я віддаю перевагу bash перед tcsh насамперед завдяки його зручності HISTIGNORE та HISTCONTROL, хоча tcsh також має налаштування histdup.
Я знайшов наступне трохи корисним, але все ще незадовільним для своєї проблеми.
chsh
для зміни оболонки для входу.