这可能与this question完全相反。
无论如何,我有一个包含这样内容的批处理文件:
a.bat
@echo %random%
我试图通过另一个批处理文件读取 a.bat :
for /f "delims=" %%p in ('dir *.bat') do (
rem loop through files
for /f "delims=" %%q in ('type %%~p') do echo %%q
) 2>nul
它输出:
@echo (random number)
如何输出@echo %random%
?任何帮助将不胜感激。
答案 0 :(得分:3)
您的代码在这里工作(赢8)。仅将/B
开关添加到dir命令。
for /f "delims=" %%p in ('dir /B a.bat') do (
rem loop through files
for /f "delims=" %%q in ('type %%~p') do echo %%q
) 2>nul
但你也可以试试
SetLocal DisableDelayedExpansion
for /f "delims=" %%p in ('dir /B a.bat') do (
for /F "tokens=1,* delims=[]" %%1 in ('"type "%%~p"|find /N /V """') do echo/%%2
)
EndLocal
在我的电脑中,都提供了@echo %ramdon%