使用WMIC时,命令行输出仍然保持为null,但在taskmgr gui(Windows)中显示

使用WMIC时,命令行输出仍然保持为null,但在taskmgr gui(Windows)中显示,windows,batch-file,wmic,Windows,Batch File,Wmic,下面显示了frmweb.exe进程的GUI中的显示(附image/png) 其中命令行参数可见 当试图通过命令行捕获相同内容时,它抛出null。 以下步骤粘贴为文本。需要帮忙吗,谢谢 wmic path win32_process get name, commandline /format:"%WINDI%\System32\wbem\csv" | find "frmweb.exe" > commandline.txt notepad commandline.txt vbox_hos

下面显示了
frmweb.exe
进程的GUI中的显示(附
image/png
) 其中命令行参数可见

当试图通过命令行捕获相同内容时,它抛出null。 以下步骤粘贴为文本。需要帮忙吗,谢谢

wmic path win32_process get name, commandline /format:"%WINDI%\System32\wbem\csv" | find "frmweb.exe" >  commandline.txt

notepad commandline.txt

vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,,frmweb.exe
vbox_host
vbox_host,find  "frmweb.exe" ,find.exe
以下是一个屏幕截图:

要使用批处理文件捕获进程的命令行
frmweb.exe

@echo关闭
设置“Process=frmweb.exe”
wmic路径win32_进程获取名称,命令行/格式:csv | find/I“%process%”findstr/I/v“find”>Commandline.txt
启动“”命令行.txt

为了确保您确实尝试使用正确的命令,我可能会使用
WMIC执行此任务:

WMIC进程,其中“Name='frmweb.exe'”获取命令行,名称/格式:“C:\Windows\System32\wbem\en-US\csv.xsl”>“CommandLines.csv”
因为您已将
csv.xsl
文件复制到
C:\Windows\System32\wbem

WMIC进程,其中“Name='frmweb.exe'”获取命令行,名称/格式:csv>CommandLine.txt
如果您特别希望排除标题,则:

WMIC进程,其中“Name='frmweb.exe'获取命令行,名称/格式:csv | Find.”>CommandLine.txt

我觉得命令行中的逗号导致了这个问题

如果您改变将结果转换为输出的方式,这可能会有所帮助,因此这里有一个建议

在文本编辑器中打开已复制到
%SystemRoot%\System32\wbem
csv.xsl
,并更改行:


致:

“”
这样做的目的是要求它对csv输出的每个值字段进行双引号引用


为了确保输出实际上不是空的,您可以从
PowerShell
测试命令:

GWMI Win32_进程-F“Name='frmweb.exe'”|选择名称,命令行|导出CSV-U-NoT。\CommandLine.txt

你确定这种格式有效吗?我想,应该是
/format:csv
是的,弹出了一个错误,说.xsl文件不在路径中,因此从en-us文件夹复制后必须给出完整的路径…我想这可能是windows错误。您是否专门设置了名为
%WINDI%
的变量?为什么不将xsl文件留在en-US目录中,并将其包含在完整路径中?为了测试这是否是xsl或WMIC的问题,您是否尝试过不同的格式?您尝试过其他WMI或CIM脚本语言吗?甚至没有添加/format:它不能像execpected那样工作。让我们把格式放在一边,.c:\>wmic path win32_进程获取名称,命令行|剪辑即使上面的这些也不能像预期的那样工作。谢谢它工作了。,--使用poweshell admin GWMI win32_进程-F“name='frmweb.exe”|选择Name,CommandLine,processid>“c:\test\CommandLinePS.csv”--使用commandwindow管理WMIC进程,其中“Name='frmweb.exe'”获取CommandLine,Name,processid/Format:“c:\test\csv.xsl”>“c:\test\CommandLineBAT.csv”,并且c:\test\csv.xsl有您的更改#compo。非常感谢;逗号是所有阻碍期望的因素。:-)