Cygwin /etc/passwd не соблюдает /bin/bash
Как я могу заставить Cygwin учитывать файл / etc / passwd и сделать мою оболочку по умолчанию bash вместо sh?
Я предполагаю, что это каким-то образом контролируется Windows XP, так как у меня раньше была проблема с разрешениями, и мне пришлось заново создать файл / etc / passwd после обновления разрешений в Win XP для моего идентификатора пользователя.
1 ответ
Решение
Попробуйте вставить этот код в свой ~/.emacs
файл запуска (и перезапуск Emacs):
(setq shell-file-name "bash"
explicit-shell-file-name "bash")
Вы также можете временно переименовать /bin/sh
в /bin/sh.hold
быть абсолютно уверенным, вызывает ли Emacs /bin/sh
или же /bin/bash
, Имейте в виду, что в некоторых случаях (см. Справочную страницу Bash) Bash будет вести себя как sh в зависимости от того, как он вызывается (например, если argv[0]
это "ш").