【发布时间】:2016-06-30 18:54:05
【问题描述】:
我正在尝试在 SQL Server 中执行以下 PowerShell 查询
xp_cmdshell "get-WmiObject Win32_LogicalDisk -AV-RISCVMSQL114 | Format-Table -Property DeviceID,FreeSpace,Size"
执行此操作后,我收到错误:
'get-WmiObject' 未被识别为内部或外部命令, 可运行的程序或批处理文件。
我想在所有 SQL Server 中执行此命令。它在 SQL Server 2008 上执行,但在 SQL Server 2012 上,由于版本或未安装某些 PowerShell 组件而引发该错误。
能否请您看一下代码并告诉我
【问题讨论】:
-
From the documentation:
Starting in Windows PowerShell 3.0, this cmdlet has been superseded by Get-CimInstance.在您在较新服务器上使用的 PowerShell 版本中很可能不再可用。 -
所以我必须使用 xp_cmdshell "get-ciminstance Win32_LogicalDisk -AV-RISCVMSQL114
-
Get-WmiObject在 PowerShell v5 中仍然可用。
标签: sql sql-server powershell