Windows 7 windows 7上的windows批处理文件有问题

Windows 7 windows 7上的windows批处理文件有问题,windows-7,batch-file,Windows 7,Batch File,我有一个批处理文件来编译和链接我所有的代码。它包含以下内容: @echo off nasm -f aout -o start.o start.asm gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -I./include -c -o main.o main.c gcc -Wall -O -fstrength-reduce -fomit-frame-point

我有一个批处理文件来编译和链接我所有的代码。它包含以下内容:

@echo off
nasm -f aout -o start.o start.asm
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -I./include -c -o main.o main.c
gcc -Wall -O -fstrength-reduce -fomit-frame-pointer -finline-functions -nostdinc -fno-builtin -I./include -c -o scrn.o scrn.c
ld -T link.ld -o kernel.bin start.o main.o scrn.o
pause
问题是,当我运行它时,它只是将所有这些打印出来作为文本。 这绝对是一个批处理文件。它以.bat文件结尾,在记事本++中,@echo off和pause的语法突出显示,而无需手动设置。
这是Windows7的错误吗?还是我做错了什么?

一个更简单的例子
已安装Windows 7
用于获取gcc

我使用了以下批处理脚本:

PATH = %PATH%;C:\cygwin\bin;
gcc test.c
在以下c文件中:

main() {
        printf("hello, world");
}
它编译得很好

我的结论
Windows7批处理脚本的工作方式与以前版本的Windows非常相似

可能会绊倒你的简单事情
默认情况下,Gcc不会安装在Windows上,我建议使用或

默认情况下,Gcc不在安装Gcc后的路径上,您可以将其添加到系统的环境变量中,或者将其添加到批处理脚本中(使用类似于我刚才使用的批处理脚本的第一行)

您是从命令行运行还是在资源管理器中双击

也许您已将“编辑”操作设置为默认操作

尝试右键单击并选择“打开”


编辑:也许你的行终止符搞错了。Windows需要CRLF

在记事本++中:

  • 单击查看->显示行尾
  • 如果它们不是CRLF,请单击格式->转换为Windows格式

我的路径中有djgpp设置。如果我只是手动键入命令,它就可以正常工作。但是它除了打印行之外什么也不做如果我在批处理文件中这样做的话也许你的行终止符搞乱了。我认为Windows需要CRLF。在记事本++中,单击查看->显示行尾。如果不是CRLF,请单击“格式->转换为Windows格式”。@aphoria:您应该将注释移动到答案正文,因为这是实际的解决方案。