String 批处理,在for循环中设置字符串变量
在for循环内部时,set命令不设置字符串变量,而在外部可以正常工作。我想它导出到一个.txt文件后,直接存储,这很好。代码如下:String 批处理,在for循环中设置字符串变量,string,batch-file,for-loop,set,echo,String,Batch File,For Loop,Set,Echo,在for循环内部时,set命令不设置字符串变量,而在外部可以正常工作。我想它导出到一个.txt文件后,直接存储,这很好。代码如下: For /l %%a in (1,1,5) do ( set /p string="StringIn %%a:" echo %string %>> string_list.txt ) Start string_list.txt 扩展括号范围内的变量集时,需要使用延迟扩展 setlocal EnableDelayedExpansion For /l %
For /l %%a in (1,1,5) do (
set /p string="StringIn %%a:"
echo %string %>> string_list.txt
)
Start string_list.txt
扩展括号范围内的变量集时,需要使用延迟扩展
setlocal EnableDelayedExpansion
For /l %%a in (1,1,5) do (
set /p string="StringIn %%a:"
>> string_list.txt echo !string!
)
endlocal
非常感谢。这很管用(将来会是一个很好的知识),但我正在使用这段代码进行文件夹比较,我发现了一种更有效的方法,使用DIR并将子文件夹导出到文本文档中。您知道是否有办法格式化命令或输出,使我只知道文件夹名称,而不知道所有其他数据?这种情况与原始问题不同,因此我不知道是否应该问一个新问题?使用“/b”选项仅用于文件路径和名称,使用“/ad”选项仅使用dir命令列出目录。有关所有选项,请参见“dir/?”。