我正在尝试通过循环进行简单的文件名字符串连接,但不知怎的,它并没有'工作。一直试图在堆栈溢出中搜索它,但解决方案并不真正有用。
这是我的代码:
setlocal EnableDelayedExpansion
set str=
for /r %%i in (*) do (
set str=%str%'%%i'
)
echo %str%
endlocal
我的文件目录是C:\ dir。内部文件只是file1.txt,file2.txt。
我希望%str%
:'C:\dir\file1.txt','C:\dir\file2.txt'
的输出结果,但我的输出结果是:%str%
:'C:\dir\file2.txt'
。它只输出目录中的最后一个文件。
答案 0 :(得分:0)
set str=!str!,'%%i'
然后
echo %str:~1%
请参阅有关delayed expansion
的任意数量的SO文章。
每个单独的项目都会以逗号后的形式添加到列表中,因此:~1
使用batch-substringing到echo
字符串,从第1个字符开始(从第0个字符开始)< / p>