dur*_*rin 5 windows batch command-line
在一个批次中,我想使用:
FOR /F "usebackq skip=1" %I IN (wmic datafile where Name^="D:\\TOTO.EXE" get Version) DO (ECHO %I)
Run Code Online (Sandbox Code Playgroud)
并且想要限制 ECHO,而不是ECHO is on.最后一行是空的。
我怎样才能做到这一点?
ECHO最后一行为空FOR /F "usebackq skip=1" %I IN (wmic datafile where Name^="D:\\TOTO.EXE" get Version) DO (ECHO %I)
Run Code Online (Sandbox Code Playgroud)
要使上述内容在批处理文件中工作,您需要更改一些内容:
将每个 single 替换%为 double %%。
(`)在 执行的命令周围添加反引号for。
通过管道传输|命令wmic以findstr /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
Run Code Online (Sandbox Code Playgroud)
您将得到单行输出,类似于以下内容:
F:\test>test
6.1.7600.16385
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3806 次 |
| 最近记录: |