我正在处理一个简单的批处理文件,以保存每个JPG的文本文件。用户使用set / p输入txt文件的内容。出于某种原因,当我使用带有for循环的set / p时,txt文件没有显示用户输入的值(它只显示:" ECHO打开")。任何帮助都将受到高度赞赏!感谢。
for %%Q in (*v.JPG) do (
set /p meas= "enter value "
echo %meas%>"%%~nQ.txt"
)
pause
答案 0 :(得分:0)
Magoo是对的,谢谢!我不得不使用启用延迟扩展,然后将变量称为!变量!而不是%变量%。遗憾的是,微软网站上没有关于这个问题的文档,至少没有关于“集合”的文档。命令网页。
答案 1 :(得分:-1)
for %%Q in (v*.jpg) do ( set /p meas="enter value " && echo !meas! > %%~nQ.txt)
我只在一个cmd提示符下对此进行了测试,但也应该在批处理中进行测试。
这将创建一个名为<filename>.jpg.txt
的新文件,并包含用户输入的值。
关键是添加&amp;&amp;在set /p
和echo
之间。