使用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。非常感谢;逗号是所有阻碍期望的因素。:-)