如何将字符串文字附加到从Select-Object命令返回的属性

时间:2013-10-02 19:24:43

标签: powershell

如何在Select-Object中连接字符串文字和参数。

例如我有:

Get-AdUser -filter * | Select-Object 'sip'+SamAccountName,Name, Email, etc

基本上我想从AdUser返回属性SamAccountName,前面有字符串文字sip

我尝试了我能想到的一切。

谢谢!

编辑:添加参数和多个用户

2 个答案:

答案 0 :(得分:12)

您可以在脚本块中指定表达式来执行此操作。像这样:

 Get-AdUser foo@bar.com | select-object {"sip"+$_.SamAccountName}

虽然如果你这样做,结果属性的名称看起来有点奇怪。要同时指定属性名称,请将脚本块作为哈希表的一部分包含在内,该哈希表指定新属性的名称以及用于生成它的scriptblock表达式。它看起来像这样:

Get-AdUser foo@bar.com | select-object @{name="SamAccountName"; expression={"sip"+$_.SamAccountName}}

答案 1 :(得分:1)

您不需要使用Select-Object,因为您不是要创建具有特定属性的新对象;您正在尝试选择单个属性(SamAccountName)并对其进行操作。

"sip" + (Get-ADUser foo@bar.com).SamAccountName