Я установил Cygwin для компиляции и запуска программ на C. Я пытаюсь написать свою собственную программу оболочки, используя Notepad ++ в качестве моего редактора. Когда я выполняю скомпилированный файл .exe из командной строки (используя nppexec), он запускается за пределами среды Cygwin.
Следующая редирект команда не будет работать с ЦМД окна:Запуск программы C в среде Cygwin через командную строку
$ sort -r < test3.txt
-rThe system cannot find the file specified.
Но работает, когда программа выполняется через Cygwin в Mintty:
$ sort -r < test3.txt
test3.txt
test.txt
sh.exe
sh.c
1.txt
Я использую следующий код для работы с nppexec для запуска программы:
cd $(CURRENT_DIRECTORY)
gcc "$(FILE_NAME)" -o $(NAME_PART).exe
cmd.exe /c start cmd /k $(NAME_PART).exe
Как редактировать приведенное выше для запуска в среде Cygwin?
Я пытался не повез:
cmd /c start mintty ./$(NAME_PART).exe
Как полностью переключиться на команды Cygwin? – George
@George Я не помню, если 'sort' - это встроенная команда или внешняя программа. Если это внешняя программа, вы можете изменить настройки вашей системы «PATH», чтобы поставить путь Cygwins 'bin' до системных каталогов Windows. Тем не менее, это может вызвать другие проблемы, если в остальном мире Windows ожидаются стандартные команды Windows. –
@George Вы можете создать копию команды сортировки cygwin, назовите ее, например. gsort (для сортировки gnu), затем используйте gsort в вашем скрипте. Таким образом, это не мешает остальным мирам окон. –