【问题标题】:format list is not recognised in powershellpowershell 中无法识别格式列表
【发布时间】:2015-07-31 02:53:23
【问题描述】:

我执行了一个命令,其中我使用了“fl”格式列表。输出为“fl”不被识别为内部或外部命令。我也遇到了与“Get-WmiObject”相同的问题。如有任何其他信息,请随时发表评论。

C:\Windows\system32>powershell.exe -Command Get-WmiObject -query "select * from msiscsi_nicconfig where Instancename LIKE '%ROOT\\ISCSIPRT\\0000_0%'" -namespace "root/wmi" | fl MacAddress

输出:

'fl' is not recognized as an internal or external command,
operable program or batch file.

【问题讨论】:

    标签: windows powershell command


    【解决方案1】:

    管道和 fl 正在由 DOS 解释,而不是 Powershell,并且由于 fl 不是 DOS 命令,您会收到错误消息。你需要做这样的事情:

    powershell.exe -Command " & {Get-WmiObject -query "select * from msiscsi_nicconfig where Instancename LIKE '%ROOT\\ISCSIPRT\\0000_0%'" -namespace "root/wmi" | fl MacAddress}"

    Run PowerShell command (with pipeline) in CMD

    【讨论】:

    • 当我执行上述命令时,我得到的输出为“拒绝访问”@Tony
    • 您是否搜索过“get-wmiobject access denied”?这就是我会做的。这是一个完全独立的问题。
    • 我刚刚执行了你指定的命令,输出是“拒绝访问”
    • 是的。当您发布问题时发生的问题被 DOS 返回,因为它不知道“fl”是什么。现在 powershell 命令已正确格式化,Get-WmiObject 命令返回“拒绝访问”错误。因此,我建议您搜索(互联网)“get-wmiobject access denied”,这是任何人都会给您的最佳建议。已经有 100 多个页面专门针对此特定错误,并且有人尝试在此处的某些 cmets 中解决该问题是没有意义的。
    【解决方案2】:

    我认为您正在尝试从 cmd 命令行运行 powershell。您的 powershell 命令以 "root/wmi" 结尾。管道 | fl MacAddresscmd 解释,而不是由 Powershell 解释。

    您应该在 Powershell 中运行整个命令。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-12-03
      • 1970-01-01
      • 2019-07-22
      • 1970-01-01
      • 1970-01-01
      • 2014-07-08
      • 1970-01-01
      • 2018-02-15
      相关资源
      最近更新 更多