2014-09-19 4 views
1

Я использую два PSObjects, которые позволяют называть их $ job1 и $ job2, которые содержат некоторые идентичные Имена свойств. Свойства для $ job1 имеют значения, но свойства сопоставления для $ job2 не имеют. Мне нужно иметь возможность делать цикл foreach, где если имя свойства в $ job1 соответствует имени свойства $ job2, обновите значение свойства $ job2 на основе Имя свойства.Передача Psobject Значения свойств в другой Psobject

Я играл с приведенным ниже кодом, но я не могу заставить его обновлять значения свойства $ job2.

$job1.PSObject.Properties | %{if($_.Name -in $job2.PSObject.Properties.Name){[$_.Value = $job2.PSObject.Properties.Value}} 

Заранее благодарим за помощь!

ответ

1

Попробуйте это:

Foreach ($Property in $Job1.Psobject.Properties.Name) 
{ 
Try { $Job2.$Property = $Job1.$Property } 
Catch { Continue } 
} 
+0

Он работал !! Спасибо, никогда не пробовал попробовать и уладить заявление в powershell. – user2821260

Смежные вопросы