PowerShell:将字符串追加到Get-ADUser查询的结果

问题描述

我想将字符串附加到Get-ADUser对象。

$VALUE =  "Something : Else " 

$RESULT = Get-ADUser -Filter 'givenname -eq "Joe" ' -Property * | 
             Select-Object -Property givenname,Surname,"$VALUE"

我有一个括号{},而不是“ Else”

PS C:\> $RESULT 
givenname                  : Joe
Surname                    : Black
Something : Else           : {}

但是我要在这里

PS C:\> $RESULT 
givenname                  : Joe
Surname                    : Black
Something                  : Else

我尝试将Get-ADUser对象放入字符串数组,然后附加$ VALUE,但这不起作用。

有人有主意吗?

因为我必须将其保存到CSV文件中。

$RESULT | Export-CSV $DESTINATION -NoTypeinformation -Encoding UTF8 -Delimiter ';'

解决方法

calculated properties的语法使用带有Name / LabelExpression键的哈希表(您可以将其缩短为ne )。

Name必须是字符串(自定义属性的名称),而Expression必须是脚本块。

# long version
Select-Object -Property GivenName,Surname,@{Name = "Something"; Expression = {"Else"}}
# short version
select GivenName,@{n="Something";e={"Else"}}