Я не уверен, что я сделал, но я как-то установил Cygwin таким образом, что даже когда я пытаюсь запустить обычную оболочку Windows, Cygwin вмешивается. У меня есть пакетные сценарии, которые я хочу запускать в окнах по умолчанию, на которые жалуется Cygwin. Я не могу их изменить; Мне нужно запустить их в оболочку фелаут. Есть ли способ вернуть мою командную оболочку без полной деинсталляции cygwin?

Дополнительная информация:

Я запускаю пакетный скрипт Windows, который запускает исполняемый файл Windows. Я не могу изменить скрипт или исполняемый файл. Это вещи, которые используют другие люди, поэтому они должны оставаться такими, какие они есть. Когда я запускаю скрипт, есть несколько путей, которые он ищет и автоматически генерирует для передачи в исполняемый файл (или, возможно, исполняемый файл генерирует их для себя). К сожалению, на полпути через этот процесс, exe жалуется, что не может найти D:\foo\bar\baz ..., потому что cygwin попытался «исправить» путь.

Если я удаляю cygwin1.dll во время запуска командного файла, я получаю сообщение об ошибке, что cygwin не был найден. Так что, хотя я нахожусь в оболочке Windows CMD (с приглашением Windows), я все еще получаю помехи от Cygwin.

Я все вместе удалил cygwin с моего пути, и теперь скрипт работает. Чтобы запустить cygwin, мне теперь нужно явно перейти в каталог cygwin, запустить bash и убедиться, что bash изменяет путь к каталогу cygwin/bin.

В основном мне нужен способ запуска сценариев в среде Windows по умолчанию с путями Windows по умолчанию, потому что я не на 100% контролирую скрипты и исполняемые файлы, которые нужно запускать как часть моей повседневной работы, и это для меня крайне неэффективно пойти и переписать каждый скрипт, который не очень хорошо работает с cygwin.

(Стоит отметить, что запуск сценария с использованием cmd /c script.bat из окна запуска Win-R работает просто отлично.)

1 ответ1

1

У вас все еще должен быть доступ к стандартной оболочке Windows. Но если нет, попробуйте запустить сценарии с помощью cmd , например:

cmd /c foo.bat

Это должно работать даже из оболочки Cygwin.

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