命令行工作 - .Bat脚本没有

时间:2015-01-18 22:30:02

标签: windows batch-file cmd

尝试通过Windows 2008服务器上的cmd提示符运行以下命令时,一切正常。但是,一旦将相同的命令保存到.bat或.cmd文件,脚本就不再有效。

@echo off
set FILE="\\servername\c$\users\users\desktop\test.txt"
FOR %I in (%FILE%) DO set SIZE=%~ZI
IF %SIZE% == 75 (
copy "\\servername\c$\users\users\desktop\test.txt" "\\servername\c$\users\users\desktop\test-1.txt"
del "\\servername\c$\users\users\desktop\test.txt"
) ELSE (
echo "Failure"
)

TIMEOUT /T -1

我不确定会有什么不同,并希望能提供任何帮助。我使用的文本文件中包含以下文本。

"
你好,早上好 我需要这个文件大小。

此文件大小为75
"

1 个答案:

答案 0 :(得分:3)

在批量内部脚本中,for循环的变量需要两个%符号。

FOR %%I in (%FILE%) DO set SIZE=%%~ZI