我对这些变量有疑问。如何将命令的结果存储到变量中?例如:将驱动器序列保存到位置变量中。 谢谢。 E.g:
@ECHO OFF
SET location = vol
ECHO我们正在使用%location%
答案 0 :(得分:0)
for /f "delims=" %%x in ('your command and parameters') do set "var=%%x"
在您希望保存输出的命令周围需要'single quotes'
。
编辑 - 现在我们知道哪个命令。
注释 - 一个变量最多可包含约8,000个字符。
这是一个例程,它将$ 1 ... $中的值设置为$ all中的整个集合,每个字段都包含在尖括号中。
@ECHO OFF
SETLOCAL
SET "$all="
FOR /f "tokens=1*delims=:" %%a IN (
'systeminfo 2^>nul^|findstr /n /r "$"'
) DO (
SET "$%%a=%%b"
FOR /f "tokens=*" %%c IN ("%%b") DO CALL SET "$all=%%$all%%<%%c>"
SET /a max=%%a
)
SET $
pause
FOR /l %%z IN (1,1,%max%) DO CALL ECHO %%$%%z%%
GOTO :EOF
答案 1 :(得分:0)
谢谢...请参阅我的批处理文件内容:
for /f "delims=" %%x in ('systeminfo') do set "var=%%x"
command_line.exe %var%
只有'systeminfo'的最后一行保存在var变量中,它是: “数据执行预防可用:是”
我想将systeminfo的所有内容存储到变量中!
答案 2 :(得分:0)
start command_line.exe $%all%
你能为我的批处理文件填写完整的代码吗?