这个问题困扰了我好几个小时。我希望有人可以帮助阐明一些观点。基本上,我试图扫描文件夹中的所有文件(特定类型)(里面没有子文件夹,所以不用担心这种情况),获取这些文件的名称,然后将所有文件连接成一个字符串例如,如果一个文件夹有两个文件,a.xml,b.xml和c.xml,我想得到一个字符串看起来像
-a a.xml -a b.xml -a c.xml
下面是我的代码。
copy *.xml C:\FTP
setLocal Enabledelayedexpansion
set "directory=C:\temp"
set "attachment= "
set "a= -a "
for %%n in (%directory% *.xml) DO (
set "attachment=!attachment! %a% %directory%\%%n "
echo.%attachment%
)
setlocal disabledelayedexpansion
echo.%attachment%
输出显示在这张图片 http://imgur.com/vpUUe05 我遇到的问题是首先,for循环中的所有回声都没有打印出来。如那些空白行所示。我想要的最后一个字符串,即附件,包含一个初始子字符串
-a C:\temp\C:temp.
这实际上不是一个文件。我想要的最后一个字符串应该是没有这个子字符串的字符串,只有它后面的字符串。顺便说一句,如果文件夹内没有文件,我希望字符串“附件”只是一个空字符串,如“”。谁能帮我?非常感谢!