Windows 7 批处理filre在Win Server 2003上运行,但不在Windows 7上运行
我有以下批处理脚本:Windows 7 批处理filre在Win Server 2003上运行,但不在Windows 7上运行,windows-7,batch-file,windows-server-2003,Windows 7,Batch File,Windows Server 2003,我有以下批处理脚本: @echo off FOR /F "delims=|" %%I IN ('DIR "*.*" /B /O:D') DO (SET %NewestFile=%%I) echo %NewestFile% 在windows2003服务器上它按预期工作并输出最新文件 IntelMPFilesPath=C:\Programme\Intel\NGSMS\MPFiles IntelMPFilesPath=C:\Programme\Intel\NGSMS\MPFiles test.bat
@echo off
FOR /F "delims=|" %%I IN ('DIR "*.*" /B /O:D') DO (SET %NewestFile=%%I)
echo %NewestFile%
在windows2003服务器上
它按预期工作并输出最新文件
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之间是否有那么大的区别吗?我不知道为什么它在Server2003中工作。您有一个额外的
%
您应该删除集合%newest文件中的%
:
@echo off
FOR /F "delims=|" %%I IN ('DIR "*.*" /B /O:D') DO (SET NewestFile=%%I)
echo %NewestFile%
您可以删除“delims=|”
并更好地设置“delims=”
.hmm。这是trange,但我想我已经试过了,但这解决了我的问题,谢谢nate