Я просто не понимаю, почему это происходит. Если я создам два отдельных новых объекта PSO, они, похоже, влияют друг на друга. Например, с этим кодом:
$o1 = new-object psobject
$o1 | add-member noteproperty abc 123
$o2 = new-object psobject
$o2 | add-member noteproperty def 456
write-output $o1
write-output $o2
Я ожидаю увидеть выходные данные как для abc, так и для def, но я получаю только abc:
abc
---
123
Если я вместо этого использую write-host, вот так:
write-host $o1
write-host $o2
Тогда он показывает вывод так:
@{abc=123}
@{def=456}
Итак, согласно выводу записи, $ o2 пусто / пусто, но хост записи говорит, что это ложь.
Что происходит?