Где-объект работает локально, но не удаленно
Я пытаюсь изучить PowerShell. Я написал небольшой скрипт для мониторинга своих серверов Exchange. Я не могу понять, почему эта линия работает на локальной машине без проблем
Get-WmiObject -Class win32_volume -Filter 'drivetype = 3' | Where-Object 'Label' -ne "System Reserved" | ft SystemName, DriveLetter, Label, @{LABEL='FreeSpaceGB'; EXPRESSION={"{0:N0}" -f ($_.freespace/1GB)}}
Но если я введу тот же код в команду invoke, я получу эту ошибку.
Invoke-Command -ComputerName $server -credential $c -ScriptBlock {
Get-WmiObject -Class win32_volume -Filter 'drivetype = 3' | Where-Object 'Label' -ne "System Reserved" | ft SystemName, DriveLetter, Label, @{LABEL='FreeSpaceGB'; EXPRESSION={"{0:N0}" -f ($_.freespace/1GB)}}
}
Я испробовал все, что только мог придумать, но безуспешно. Я даже проверяю с gm, и этикетка действительно существует... Любой совет..?Не может привязать аргумент к параметру 'FilterScript', поскольку он равен null. + CategoryInfo: InvalidData: (:) [Where-Object], ParameterBindingValidationException + FullyQualifiedErrorId : ParameterArgumentValidationErrornullnotallowed, Microsoft.PowerShell.Команды.WhereObject Команда