Возможно ли, что cygwin игнорирует переменную среды Windows HOME?

В рамках установки EGit мне пришлось установить переменную среды HOME в Windows. Это вызвало проблему, когда cygwin считает переменную среды HOME в Windows более важной, чем значение в / etc / passwd. В результате cygwin считает, что мой каталог HOME в cygwin переместился из своего предыдущего местоположения в папку профиля пользователя Windows. Я предпочитаю хранить файлы cygwin отдельно, так как моя папка профиля пользователя уже достаточно загромождена, но, похоже, это невозможно.

Есть ли способ, чтобы cygwin использовал значение из / etc / passwd вместо переменной окружения HOME?

Измените / etc / profile и измените строки

# Set the user id USER="$(id -un)" 

в

 # Set the user id USER="$(id -un)" # Set user home dir HOME=$(eval echo "~$USER") 

Это вынуждает Cygwin всегда использовать значение из / etc / passwd. Это лучше, чем использование Cygwin.bat, потому что это относится ко всем оболочкам входа, независимо от того, как они создаются.

Файл cygwin.bat, обычно используемый для запуска оболочки Cygwin, может быть изменен, чтобы делать все, что вам нужно с HOME. Вы можете попробовать:

 set HOME= 

Это должно основываться на документации и опыте, фактически UNset% HOME%, так что cygwin этого не видит. Поскольку cygwin по умолчанию устанавливает $ HOME как значение в / etc / passwd (если HOME не установлен в родительском процессе, из которого он наследует среду), вы должны получить желаемый результат.

Обратите внимание, что я заявляю, что

 set HOME= 

Фактически удаляет HOME из установленных переменных env; Не, как можно было бы ожидать, альтернативный результат установки HOME на нулевую строку (но оставив ее зависанием в среде).

Вот несколько вещей, которые вы можете попробовать:

  1. Измените cygwin.bat и set HOME= в любой каталог, который вы хотите.

  2. Измените / etc / profile ( C:\cygwin\etc\profile ) и измените cd "${HOME}" на все, что вы хотите.

  • Cygwin: PS1 не может обернуть строки в одной строке (2)
  • Как получить цветной режим vim для работы в vim под cygwin
  • Запись вывода «tail -f» в другой файл
  • Cygwin mkdir создает каталог У меня нет прав на
  • Как обновить переменные среды оболочки cygwin, установленные в окне «Свойства системы»
  • Как установить cURL на cygwin?
  • Как получить ключи F1-F12 для переключения экранов на экране gnu в cygwin при подключении через SSH?
  • Как добавить cygwin / bin в путь поиска в Windows XP?
  • Устройство USB, не распознанное в cygwin
  • Установка компиляторов Cygwin C и C ++ для среды IDE NetBeans 7.2
  • Как я могу удалить папку cygwin на моем диске c?
  • Interesting Posts
    Давайте будем гением компьютера.