批处理文件在Win Server 2003上运行,但在Windows 7上运行

时间:2013-04-12 16:48:46

标签: windows-7 batch-file windows-server-2003

我有以下批处理脚本:

@echo off
FOR /F "delims=|" %%I IN ('DIR "*.*" /B /O:D') DO (SET %NewestFile=%%I)
echo %NewestFile%
<{1>} Windows 2003 Server它按预期工作并输出最新文件

IntelMPFilesPath=C:\Programme\Intel\NGSMS\MPFiles
IntelMPFilesPath=C:\Programme\Intel\NGSMS\MPFiles
test.bat

但在Windows 7上运行相同的批处理文件会产生以下结果:

Die Umgebungsvariable "I" ist nicht definiert.
Die Umgebungsvariable "I" ist nicht definiert.
Die Umgebungsvariable "I" ist nicht definiert.
Die Umgebungsvariable "I" ist nicht definiert.
ECHO ist ausgeschaltet (OFF).

有人知道Win7和Srv2003命令shell之间是否存在很大差异?

1 个答案:

答案 0 :(得分:1)

我不知道它为什么在Server 2003中运行。你还有一个额外的%

您应该移除%中的SET %NewestFile

@echo off
FOR /F "delims=|" %%I IN ('DIR "*.*" /B /O:D') DO (SET NewestFile=%%I)
echo %NewestFile%