用于循环最终输出

时间:2016-06-20 13:33:59

标签: batch-file for-loop cmd

不确定我哪里出错,但我希望最终输出只显示帽子不包含C:\ Windows \ System或C:\ Windows \ system32

@echo off
for /f "tokens=2" %%n in ('sc query state^= all ^| findstr SERVICE_NAME') do (
  for /f "delims=: tokens=1*" %%r in (
    'sc qc "%%~n" ^| findstr BINARY_PATH_NAME'
  ) do (
    echo %%~s ^| findstr /V "C:\Windows\system32 C:\Windows\System32"
  )
)

输出只列出循环中的所有命令,但不提供我的最终服务列表。

1 个答案:

答案 0 :(得分:1)

尝试更改

echo %%~s ^| findstr /V "C:\Windows\system32 C:\Windows\System32"

echo %%~s | findstr /V /I "c:\windows\system32"

换句话说,添加不区分大小写的标志,并删除管道字符的转义。如果我将其保存为.cmd文件,这对我有用。