我已经兜圈子一个多小时了,谁能告诉我为什么这不起作用?
我需要创建一个文件夹数组,并使用该数组触发 robocopy 命令
@echo off
setlocal EnableDelayedExpansion
set str=%USERPROFILE%
set server=\\poppy
call set mod=%%str:C:=%server%%%
if not exist "%mod%" mkdir %mod%
set list= %mod%\Documents %mod%\Downloads
set counter=0
(for %%a in (%list%) do (
echo.%%a
set counter=counter+1
echo.%counter%
))
pause
无论我尝试什么,我都无法增加计数器:-(
最佳答案
@echo off
setlocal EnableDelayedExpansion
set "str=%USERPROFILE%"
set "server=\\poppy"
call set "mod=%%str:C:=%server%%%"
if not exist "%mod%" mkdir %mod%
set "list= %mod%\Documents %mod%\Downloads"
set counter=0
setlocal enableDelayedExpansion
(for %%a in (%list%) do (
echo.%%a
set /a counter=counter+1
echo.!counter!
))
endlocal
pause
有关更多信息,请查看 - http://blogs.msdn.com/b/oldnewthing/archive/2006/08/23/714650.aspx
对于 SET
的算术运算,您需要 /A
开关。
关于windows - cmd.exe 不递增 for 循环中的数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29279849/