如何删除 wmic 命令的最后一行空白行?

如何删除 wmic 命令的最后一行空白行?

在批处理中我想使用:

FOR /F "usebackq skip=1" %I IN (wmic datafile where Name^="D:\\TOTO.EXE" get Version) DO (ECHO %I)

并想限制 ECHO,不让ECHO is on.最后一行为空。

我怎样才能做到这一点?

答案1

我不想ECHO最后一行是空的

FOR /F "usebackq skip=1" %I IN (wmic datafile where Name^="D:\\TOTO.EXE" get Version) DO (ECHO %I)

要使上述内容在批处理文件中发挥作用,您需要更改一些内容:

  1. 将每个单打替换%为双打%%

  2. (`)在 执行的命令周围添加反引号for

  3. 通过管道将|命令发送wmicfindstr /r /v "^$"以删除空白行(这将删除输出ECHO is on.

综合起来,使用以下批处理文件(test.cmd):

@echo off
setlocal
for /f "usebackq skip=1" %%i in (`wmic datafile where Name^="D:\\TOTO.EXE" get Version ^| findstr /r /v "^$"`) do (echo %%i)
endlocal

您将获得一行输出,类似于以下内容:

F:\test>test
6.1.7600.16385

相关内容