Windows 如何在正在运行的进程上批处理或cli自动化sigcheck.exe?

Windows 如何在正在运行的进程上批处理或cli自动化sigcheck.exe?,windows,batch-file,wmic,sysinternals,Windows,Batch File,Wmic,Sysinternals,我试图生成一个正在运行的进程列表(完整的可执行路径),然后循环遍历该列表,并对每个文件执行sysinternal“sigcheck.exe” 由于某些原因,这没有按预期执行,我不确定这是由于我对输入文件的处理,还是由于wmic创建的输出格式。理想情况下,我希望首先将其作为批处理脚本使用,然后尝试将其转换为cli one liner 下面是我目前正在尝试的代码: setlocal enabledelayedexpansion @echo off wmic process get executabl

我试图生成一个正在运行的进程列表(完整的可执行路径),然后循环遍历该列表,并对每个文件执行sysinternal“sigcheck.exe”

由于某些原因,这没有按预期执行,我不确定这是由于我对输入文件的处理,还是由于wmic创建的输出格式。理想情况下,我希望首先将其作为批处理脚本使用,然后尝试将其转换为cli one liner

下面是我目前正在尝试的代码:

setlocal enabledelayedexpansion
@echo off
wmic process get executablepath /format:csv | more > c:\windows\temp\pslist.txt
for /f "skip=5 tokens=1,2 delims=," %%a in (c:\windows\temp\pslist.txt) do (
 echo %%b
 sigcheck.exe -accepteula -r -e "%%b"
)
ENDLOCAL
这将使用“wmic.exe进程”构建列表,并仅将“executablepath”传递给“sigcheck.exe”。“threadcount”是一个技巧——因为WMIC有其臭名昭著的额外CR,要求额外的1个不需要的属性会在输出中创建标记……逗号。“for”命令在逗号处切掉WMIC输出,这就是如何在没有任何额外CRs的情况下拉出“executablepath”

命令: 输出(为了简洁起见,部分输出):
通过
更改
%file%
!文件并在开头插入
setlocal EnableDelayedExpansion
行。。。(虽然一个更简单的解决方案是通过
%%b
更改
%file%
)@Aacini,我按照建议编辑了脚本,但它似乎仍然无法根据正确的文件路径实际运行sigcheck.exe,运行脚本回显正确的文件名,然后是sigcheck.exe的启动横幅,然后是“未找到匹配的文件。”消息。
setlocal enabledelayedexpansion
@echo off
wmic进程获取可执行路径/格式:csv | more>c:\windows\temp\pslist.txt
for/f“跳过=5个令牌=1,2个delims=,”%a in(c:\windows\temp\pslist.txt)do(
echo%%b
sigcheck.exe-accepteula-r-e%%b
如果文件路径有空格,应将其括在引号中:
sigcheck.exe-accepteula-r-e%%b“
感谢您指出我在某些方面是新手……我的意思是,我的问题的性质让我觉得很明显,我是新手,正在努力学习,但感谢您指出这一点。此外,用引号括起来也没有用……特别是因为大多数正在运行的进程的可执行路径不包含空格,而且它们仍然会抛出在Win7系统上使用此批处理脚本执行时“未找到匹配的文件”。确定。简单问题:
sigcheck.exe
程序是否有效?忘记批处理文件,并在命令提示符下输入一行完整的进程路径,以证明其有效。然后,在此处发布这样一行。。。
for /f "tokens=2 delims=," %A in ('wmic process where "not executablepath=null" get executablepath^,threadcount /format:csv') do @sigcheck.exe -accepteula -r -e "%A"
Sigcheck v2.72 - File version and signature viewer
Copyright (C) 2004-2019 Mark Russinovich
Sysinternals - www.sysinternals.com

c:\program files (x86)\google\chrome\application\chrome.exe:
        Verified:       Signed
        Signing date:   7:47 PM 2/28/2019
        Publisher:      Google LLC
        Company:        Google Inc.
        Description:    Google Chrome
        Product:        Google Chrome
        Prod version:   72.0.3626.121
        File version:   72.0.3626.121
        MachineType:    64-bit

Sigcheck v2.72 - File version and signature viewer
Copyright (C) 2004-2019 Mark Russinovich
Sysinternals - www.sysinternals.com

c:\windows\system32\windowspowershell\v1.0\powershell.exe:
        Verified:       Signed
        Signing date:   5:26 PM 4/11/2018
        Publisher:      Microsoft Windows
        Company:        Microsoft Corporation
        Description:    Windows PowerShell
        Product:        Microsoft« Windows« Operating System
        Prod version:   10.0.17134.1
        File version:   10.0.17134.1 (WinBuild.160101.0800)
        MachineType:    64-bit

Sigcheck v2.72 - File version and signature viewer
Copyright (C) 2004-2019 Mark Russinovich
Sysinternals - www.sysinternals.com