在PowerShell中,当我专门使用Active Directory时,通常我会编译一个对象,其中包含通常带有$x = get-adgroup -filter {name -like "*"} | select-object name
的人员列表,这会给我一个带有标题或对象类型名称的列表:
name
----------
name1
name2
name3
如何访问对象的名称标题,甚至将其更改为其他内容?
它可以像我访问第一个条目的字符串$x[0].name
一样完成吗?
此外,是否有更通用的方法来访问与任意条目相关联的字符串?
我被要求在PowerShell中进行大量与AD相关的“编程”,因此您可以提供的任何资源可以帮助我。非常感谢。
答案 0 :(得分:2)
如果要更改名称,可以在选择块中为其创建表达式:
get-adgroup -filter {name -like "*"} | select-object @{Name="WhatYouWannaCallIt";Expression={$_.Name}}
现在可以给你:
WhatYouWannaCallIt
------------------
name1
name2
name3
答案 1 :(得分:1)
我认为您要求的两件事是以编程方式确定对象中给定属性的名称。
(get-aduser $user | select name).psobject.properties
MemberType : NoteProperty
IsSettable : True
IsGettable : True
Value : Matt
TypeNameOfValue : System.String
Name : name
IsInstance : True
Name
的{{1}}属性包含大部分此类信息,我认为您可能正在寻找。
对于使用.psobject.properties
答案 2 :(得分:0)
你的意思是:
$x = get-adgroup -filter {name -like "*"}
$x.name
或
(get-adgroup -filter {name -like "*"}).name