0

我无法弄清楚这个变量范围......继承人的代码。我一直在阅读,但似乎无法确定它。我想复制一个文件 4 次,并在每次扩展文件名时连接一个名称。它将复制:Cow、Cow Cow、Cow Cow Cow 等。

set "hash = Cow"
call:filecreate "Cow","%hash%"

:filecreate
set "name = %~1"
for /l %%C in (1,1,4) do (
for /f %%a in ('xcopy "%filez%" "%desktop%" /H /Y /R /F') do (
ren "%desktop%\system.ini" "!name!"
)
set "name = !name! %~2"
)
goto:eof
4

1 回答 1

3

空格在SET语句中很重要。

set var = something

将变量设置"var "" something"

set var=something

将变量设置"var""something"

(还要注意 - 有CALLed :filecreate,然后批处理:filecreate将第二次执行,因为它不会将标签识别为“程序结束”。如果您只希望程序执行一次,则需要在GOTO :EOF之后显式)CALL

于 2013-04-30T07:58:19.537 回答