从批处理Windows输出到变量获取单个单词?

时间:2017-06-13 13:40:01

标签: windows batch-file

我正在运行命令

netstat -ano | findstr 8080

给我输出

TCP    127.0.0.1:8080         0.0.0.0:0              ABHÖREN         4576

然后我想杀死任务,但PID显然总是在变化,所以我需要将第五个字(在本例中为4576)读入一个变量。我该怎么做呢?通过谷歌搜索我只能设法得到整行

提前致谢!

1 个答案:

答案 0 :(得分:1)

for /f "tokens=5" %%a in ('netstat -ano ^| findstr 8080') do set pid=%%a
echo %pid%

执行单引号中的命令,并解析每行输出,使用默认值选择第五个标记。

请注意插入符号管道。这需要告诉cmd它执行命令的一部分,而不是从格式错误的语句重定向