Windows
將 Windows 命令的輸出儲存在批處理文件中
我需要將命令行的輸出儲存在變數中。我怎樣才能做到這一點?
提供了一個簡單的批處理文件
test.cmd
,內容如下:echo jscott
您可以使用以下命令行將輸出設置為變數:
FOR /F "tokens=*" %a in ('test.cmd') do SET OUTPUT=%a
像這樣在命令行上使用:
C:\>SET OUTPUT Environment variable OUTPUT not defined C:\>FOR /F "tokens=*" %a in ('test.cmd') do SET OUTPUT=%a C:\>ECHO %OUTPUT% jscott
如果您想
FOR
在批處理文件而不是命令行中使用 ,則需要更改%a
為%%a
.
這就是我這樣做的方式:
vol c: > result.txt set /p DATA=<result.txt echo %DATA% del result.txt
如果 result.txt 多於 1 行,則僅文件的頂行用於 %DATA%。您也可以將 result.txt 本身變成一個變數,例如 %OUTPUT%。