最终,我试图找出一种方式来获取所有正在运行的进程的可执行路径,然后针对磁盘上的每个相应文件确定制造商。我敢肯定有一种方法可以使Powershell更加容易,但是希望弄清楚如何仅使用本机命令(XP +)和WMIC来做到这一点。
我写单行代码没有运气,所以我写了以下批处理脚本(我也是这样做的新手……),它遇到了一些带有空格的可执行路径的问题。
@echo off
wmic process get executablepath | more > temp.txt
setlocal enabledelayedexpansion
for /f "skip=5 delims=;" %%i in (temp.txt) do (
set str=%%i
set str=!str:\=\\!
echo !str!>>new.txt
)
for /f %%j in (new.txt) do (
@echo %%j
wmic datafile where "name='%%j'" get name,manufacturer /format:list
)
ENDLOCAL