视窗
根据帖子(dos批处理通过分隔字符串),我在下面编写了一个脚本,但没有按预期工作.
目标:给定字符串"Sun,Granite,Twilight",我想在循环中获取每个主题值,以便我可以使用该值进行一些处理.
当前输出不正确:
list = "Sun,Granite,Twilight"
file name is "Sun Granite Twilight"
Run Code Online (Sandbox Code Playgroud)
对于第一次迭代,它应该是:
list = "Sun,Granite,Twilight"
file name is "Sun"
Run Code Online (Sandbox Code Playgroud)
然后第二次迭代应该是"文件名是"花岗岩"等等.我做错了什么?
码:
set themes=Sun,Granite,Twilight
call :parse "%themes%"
goto :end
:parse
setlocal
set list=%1
echo list = %list%
for /F "delims=," %%f in ("%list%") do (
rem if the item exist
if not "%%f" == "" call :getLineNumber %%f
rem if next item exist
if not "%%g" == "" call :parse "%%g"
)
endlocal
:getLineNumber
setlocal
echo …Run Code Online (Sandbox Code Playgroud) 到目前为止这是我的代码:
for /f "tokens=1 eol=," %%f IN ("1,2,3,4") do (
echo .
echo %%f
)
Run Code Online (Sandbox Code Playgroud)
我期待这样做:
.
1
.
2
.
Run Code Online (Sandbox Code Playgroud)
等等...
但相反,我得到:
.
1
Run Code Online (Sandbox Code Playgroud)
就是这样.我错过了什么?