Ошибка, которую вы видите, говорит нам, что $collID
- это $null
- что означает, что вызов Get-CMCollection
ничего не дал.
Как вы обнаружили, SLS00287
- это идентификатор коллекции , а не имя, поэтому сначала обновите:
$deviceCollection = Get-CMDeviceCollection -CollectionId -CollectionID $colltomove
Далее, чтобы PowerShell правильно развернул переменную $siteCode
в $destcollfolder
, необходимо использовать двойные кавычки ("
) вместо одинарных кавычек ('
):
$destcollfolder = "$($sitecode):\DeviceCollection\Test Operational"
Наконец, я бы предложил использовать преимущества конвейерной привязки при вызове Move-CMObject
:
$deviceCollection |Move-CMObject -FolderPath $destcollfolder