Вы, вероятно, попытались бы:
write-host "the new value is $obj1.value"
и получили бы соответствующий вывод
the new value is System.Management.Automation.PSReference.value
Я думаю, вы не заметили .value
в конце вывода.
В строках вы должны сделать что-то подобное при доступе к свойствам:
write-host "the new value is $($obj1.value)"
Или использовать строковый формат, например:
write-host ("the new value is {0}" -f $obj1.value)
Или присвоить значение снаружи как $value = $obj1.value
и использовать в строке.