Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] не корректный вывод переменной

Ответить
Настройки темы
PowerShell - [решено] не корректный вывод переменной

Новый участник


Сообщения: 20
Благодарности: 0

Профиль | Отправить PM | Цитировать


Изменения
Автор: Спаситель
Дата: 22-09-2015
Код: Выделить весь код
$SiteServer = aqua
$SiteCode = kei 
$CollectionName = test1 
$Collection = get-wmiobject -ComputerName $siteServer -NameSpace "ROOT\SMS\site_$SiteCode" -Class SMS_Collection | where {$_.Name -eq "$CollectionName"} 
$SMSMemebers = Get-WmiObject -ComputerName $SiteServer -Namespace "ROOT\SMS\site_$SiteCode" -Query "SELECT * FROM SMS_FullCollectionMembership WHERE CollectionID='$($Collection.CollectionID)' order by name" | select Name
foreach ($SMSMemebers in Get-WmiObject -ComputerName $SiteServer -Namespace "ROOT\SMS\site_$SiteCode" -Query "SELECT * FROM SMS_FullCollectionMembership WHERE CollectionID='$($Collection.CollectionID)' order by name" | select Name) 
{
$SMSCli = [wmiclass]"\\$SMSMemebers\root\ccm:SMS_Client"
$SMSCli.TriggerSchedule("{00000000-0000-0000-0000-000000000021}")
}
Короче такая вот хрень которая лезет в коллекцию sccm берет от туда значение name компутеров и присваивает его, далее в цикле просто по wmi запускает тригер клиента для связи с sccm

Для проверки до цикла запускаю "выведи мол чего там в коллеции то" $SMSMemebers

Он мне отдает значение
Код: Выделить весь код
PS KEI:\> $SMSMemebers

Name                                                                                                                       
----                                                                                                                       
VDA-W81-16                                                                                                                 
VDA-W81-6                                                                                                                  
WS3404
далее я радуюсь и запускаю в цикле подключение по строкам и получаю болт причем странный
Код: Выделить весь код
Не удается преобразовать значение "\\@{Name=WS3404}\root\ccm:SMS_Client" в тип "System.Management.ManagementClass". Ошибка:
 "Сервер RPC недоступен. (Исключение из HRESULT: 0x800706BA)"
C:\Users\ii.ps1:10 знак:1
+ $SMSCli = [wmiclass]"\\$SMSMemebers\root\ccm:SMS_Client"
Что такое @{Name=WS3404} и как избавится от этой фигни? ... мне надо чтобы он мне вывел только имена машин и засунул их в переменную .


По итогу
Код: Выделить весь код
$SiteServer = 'aqua'
$SiteCode = 'kei' 
$CollectionName = 'test1' 
$cred = Get-credential 
$Collection = get-wmiobject -ComputerName $siteServer -NameSpace "ROOT\SMS\site_$SiteCode" -Class SMS_Collection -Credential $cred | where {$_.Name -eq "$CollectionName"} 
foreach ($SMSMemebers in Get-WmiObject -ComputerName $SiteServer -Credential $cred -Namespace "ROOT\SMS\site_$SiteCode" -Query "SELECT * FROM SMS_FullCollectionMembership WHERE CollectionID='$($Collection.CollectionID)' order by name" | Select -Expand Name) 
{
$SMSCli = [wmiclass]"\\$($SMSMemebers)\root\ccm:SMS_Client"
$SMSCli.TriggerSchedule("{00000000-0000-0000-0000-000000000021}")
}

Отправлено: 22:41, 22-09-2015

 

Пользователь


Сообщения: 114
Благодарности: 13

Профиль | Отправить PM | Цитировать


Так работает оператор Select. Просто надо его убрать и использовать $SMSMemebers.name
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:51, 22-09-2015 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 1259
Благодарности: 861

Профиль | Отправить PM | Цитировать


1) $SMSMemebers.Name
[wmiclass]"\\$($SMSMemebers.Name)\root\ccm:SMS_Client"

2) Select -Expand Name

.....order by name" | select -Expand Name
Это сообщение посчитали полезным следующие участники:

Отправлено: 22:52, 22-09-2015 | #3



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » PowerShell - [решено] не корректный вывод переменной

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - Не корректный выход из спящего режима. crymax768 Microsoft Windows 7 3 04-06-2015 12:26
CMD/BAT - [решено] Bat почему не работает вывод переменной %errorlevel% Eugene Shugaev Скриптовые языки администрирования Windows 8 12-03-2014 06:04
CMD/BAT - [решено] Ввод Вывод, присвоение значения переменной из файла Loki3D Скриптовые языки администрирования Windows 1 03-09-2013 15:34
VBS/WSH/JS - [решено] Не корректный завершение explorer O L E G Скриптовые языки администрирования Windows 0 30-03-2012 09:39
VBS/WHS/JS - Вывод значения переменной в сообщение la_vanille_ciel Программирование и базы данных 3 09-04-2008 11:55




 
Переход