2012-09-06 72 views
0

我得从这里后,其完美的作品这个代码将用户添加到安全组从CSV文件:使用显示名称属性

Import-CSV $file | % {$myGroup | Add-ADGroupMember -Members $_.Alias} 

我的CSV文件的第一行是“别名”,每其他行是用户名。这很好。

然而,当我修改代码以这样的:

Import-CSV $file | % {$myGroup | Add-ADGroupMember -Members $_.displayName} 

我修改CSV文件第一行“显示名”和所有其他行的显示名称,这是行不通的。我猜这是因为displayName不是这个代码的有效属性,所以我如何修改这个来使用用户的显示名称而不是用户名呢?

回答

1

这不起作用,因为DisplayName不是可接受的值。以下是有效值的列表。看到这里的cmdlet的在线帮助:http://technet.microsoft.com/en-us/library/ee617210.aspx

Members 

Specifies a set of user, group, and computer objects in a 
comma-separated list to add to a group. To identify each object, use 
one of the following property values. Note: The identifier in 
parentheses is the LDAP display name. 

Distinguished Name 
Example: CN=SaraDavis,CN=Europe,CN=Users,DC=corp,DC=contoso,DC=com 

GUID (objectGUID) 
Example: 599c3d2e-f72d-4d20-8a88-030d99495f20 

Security Identifier (objectSid) 
Example: S-1-5-21-3165297888-301567370-576410423-1103 

SAM Account Name (sAMAccountName) 
Example: saradavis 

此外,成员参数接受的值的集合,所以你也可以这样做:

$members = Import-CSV $file | Foreach-Object {$_.Alias} 
$myGroup | Add-ADGroupMember -Members $members 
+0

所以说我要添加用户“约翰·史密斯”。我无法使用John Smith添加它,我需要使用jsmith? – Pickle

+0

准确地说,任何对应于有效值的值。 –

+0

啊,这是令人失望的。不过谢谢 – Pickle