-1

Я пытаюсь заставить Cygwin (CYGWIN_NT-6.1 / 2.11.1 (0.329 / 5/3)) запускаться с tcsh качестве оболочки по умолчанию в Windows 7. Я прочитал этот вопрос и ответы там, но у меня были некоторые проблемы с мятным методом, упомянутым в этом конкретном ответе:

Если вы запустите Cygwin с помощью mintty, то добавьте оболочку в качестве параметра. mintty /usr/bin/zsh -

Вот что происходит:

  • используя завершающую черту для вызова интерактивной оболочки (?), заставляет окно мигать и снова исчезает (независимо от того, использую ли я -l)
  • mintty /bin/tcsh без завершающей черты или -l , окно оболочки Cygwin открывается, но многие встроенные команды приводят к "фатальной ошибке - обнаружена несоответствие базы Cygwin ...". Я искал и нашел более старую версию cygwin1.dll (в ConEmu /wsl), как указано в сообщении об ошибке, переименовал его, но безрезультатно - я продолжаю получать ту же ошибку
  • mintty /bin/tcsh -l дает лучшие результаты, но начинается с домашнего каталога как Windows% USERPROFILE%. Это означает, что он также обходит мой .tcshrc в моем домашнем каталоге cygwin (<CygwinDir>/home/<account>), но, как ни странно, обрабатывает .aliases оттуда. Также странно, что точка выше (mintty без завершающего тире или -l) начинается в правильном домашнем каталоге cygwin.
  • Я также попытался отредактировать /etc/nsswitch.conf , как было предложено в другом ответе, но это не имело никакого значения.
  • Установка Windows SHELL env var в /usr/bin/tcsh , как было предложено в другом ответе на упомянутый вопрос, сработала при запуске с ярлыка на рабочем столе, но я не думаю, что это "правильный" способ сделать это. Когда я запускаю mintty из командной строки Windows, я получаю сообщение об ошибке "Failed to run '/usr/bin/tcsh': No such file or directory" .

Почему якобы хороший ответ не работает для меня? Кто-нибудь может сказать, как это сделать правильно? Кроме того, кто-нибудь может объяснить загадки завершающего тире, фатальной ошибки, nsswitch или переменной SHELL?

1 ответ1

0

Чтобы запустить оболочку tc из mintty, введите команду:

mintty /bin/tcsh -l

Чтобы запустить оболочку входа по умолчанию, обычно bash

mintty -

Формат mintty /usr/bin/zsh - неверный

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .