在批处理文件中存储命令的返回值

时间:2015-10-26 05:06:44

标签: batch-file

我正在创建一个批处理文件,我想在其中存储以下命令返回的值(在Windows中):

netstat -an | find ":port" /c

如何存储计数值并使用echo打印?

2 个答案:

答案 0 :(得分:0)

我猜想类似于:

@echo off
set "Blah=netstat -an|find ":port" /c"
echo %Blah%
pause

答案 1 :(得分:0)

要捕获命令的输出,可以使用for /F命令;要将其存储到变量中,请在set循环的正文中使用for

for /F "delims=" %L in ('netstat -an ^| find ":port" /c') do (set "VAR=%L")

请注意转义的管道^|。要在批处理文件中使用此功能,请将%L替换为%%L

这仅适用于单行输出。如果命令返回多行输出,则只有最后一行存储在变量VAR中。