2015-09-11 43 views
0

我安装了Cygwin来编译和运行C程序。我正在尝试使用Notepad ++作为我的编辑器编写我自己的shell程序。当我从命令行(使用nppexec)执行编译后的.exe文件时,它会在Cygwin环境之外运行。
以下重定向命令不带窗户的CMD运行:通过命令行在Cygwin环境中启动C程序

$ sort -r < test3.txt 
test3.txt 
test.txt 
sh.exe 
sh.c 
1.txt 

我用下面的代码与nppexec运行:

$ sort -r < test3.txt 
-rThe system cannot find the file specified. 

但是当通过Cygwin的Mintty执行的程序的工作原理启动该程序:

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 

回答

0

Windows命令行有它自己的sort命令,其行为不是通过Cygwin的命令行提供的变体不同。

+0

如何完全切换到Cygwin命令? – George

+0

@George我不记得'sort'是内置命令还是外部程序。如果它是一个外部程序,你可以改变你的系统'PATH'设置,把Cygwins'bin'路径放在Windows系统目录之前。但是,当Windows世界的其他人期望使用标准的Windows命令时,这可能会导致其他问题。 –

+0

@George你可以创建一个cygwin sort命令的副本,并将其命名为gsort(对于gnu排序),然后在脚本中使用gsort。这样它就不会干扰其他窗口世界。 –

相关问题