WMIC命令的作品,但在PowerShell脚本不起作用

#Get Data Rate wmic "/OUTPUT:'C:\Users\user\Documents\DATE RATE\Data_Rate-ts8"+".txt" nic where 'NetEnabled = True' 'get Name,MacAddress,Speed'" 

在控制台中直接运行这个工作。 这只是因为在控制台中,我可以这样做:

 ps C:\>wmic wmic:root\cli>/OUTPUT:"C:\Users\user\Documents\DATE RATE\Data_Rate-ts8"+".txt" nic netenabled ="True" wmic:root\cli>exit ps C:\> 

在powershell脚本中,我不能简单地inputWMIC,然后input命令的其余部分,或者通过inputWMIC提示符来中断脚本,等待用户键入并不再执行脚本。

当我把它放在一个PowerShell脚本(第一个片段),我不断得到:

找不到别名

我已经尝试了不同的引号组合。 但是我上面贴的脚本专门给我:

“/ OUTPUT:'C:\ Users \ user \ Documents \ DATE RATE TESTS \ Data_Rate-ts8'+'。txt'nic其中'NetEnabled = True''get Name – Alias not found。

你决心继续使用WMIC吗? 如果您使用的是PowerShell,则可能会发现使用本机PowerShell cmdLets获取相同的信息会更有用。

根据您对文件所做的操作,这可能允许您跳过文件。 您也可以将WMI查询结果传递给| foreach { } | foreach { }

 get-wmiobject Win32_NetworkAdapter -filter 'NetEnabled = True' | select-object Name,MacAddress,Speed | format-list | out-file dataRate.txt