Недавно я переустановил cygwin на моем компьютере с Windows 7 и добавил каталог cygwin в свой путь, чтобы он легко работал с командной строкой Windows. Каждый раз, когда я выполняю команду, я получаю следующий фактический результат:
"tty" option detected in CYGWIN environment variable.
CYGWIN=tty is no longer supported. Please remove it from your
CYGWIN environment variable and use a terminal emulator like mintty,
xterm, or rxvt.
Как я могу избавиться от этого, чтобы я мог использовать Cygwin в моей командной строке без раздражающего заголовка?
Ответы:
У меня была та же проблема, но не было настройки для
CYGWIN
переменной среды ни в одном скрипте, ни в свойствах компьютера (Панель управления).Затем я обнаружил, что
sshd
служба имеет параметр дляCYGWIN
переменной среды в реестре Windows под следующим ключом:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\sshd\Parameters\Environment
При удалении
tty
опции в@CYGWIN
строке предупреждение об устаревании больше не появляется при выполнении команд.источник
sshd
разделе этого не было, но я нашел свой вHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
. Поиск в реестреtty
дает много ложных срабатываний; поискbinmode
гораздо эффективнее.Вы должны где-то установить переменную среды CYGWIN, например, в сценарии, который вы используете для запуска командной строки, или в глобальной среде Windows. Вы можете найти последний в Панели управления, в System-> Advanced-> Environment Variables. (По крайней мере, там они и есть в XP; возможно, они переместились в 7.)
источник
CYGWIN
Переменнаяsshd
не установлена там.+1 для VirtualStaticVoid
Вы можете увидеть настройки здесь:
Но это только для чтения. Вот как это исправить только с помощью ssh:
Создать sshd-env.reg
Импортируйте его в реестр:
Убедитесь, что это заняло:
Как-нибудь перезапусти sshd.
Кажется, у cygrunsrv нет опции --restart. Позор. Без установленного crontab, который не установлен по умолчанию, перезагрузить компьютер может быть проще всего. В конце концов, это окна.
источник