早上好。我想要完成的事情说起来容易做起来难。使用下面的代码,我返回以下内容:
群组归:@ {samaccountname = aduser1}
群组归:@ {samaccountname = aduser2}
以下是代码:
$GroupList = get-content "Z:\text.txt"
ForEach($Entry in $GroupList){
$SubGroups = @()
$AllMembers = @()
$strGroupOwner = Get-ADGroup -identity $Entry -Properties ManagedBy | select managedby
$strOwnerName = get-aduser -identity $strGroupOwner.managedby -properties samaccountname |select samaccountname
"Group is owned by: " + $strOwnerName
我只需删除' @ {samaccountname ='而且'}'最后从我的字符串$ strOwnerName传递到下一步,使我的简历更接近:
群组归:aduser1
所有集团归:aduser2
所有
我在谷歌上找到的只是删除了“空白空间”。任何帮助或阅读材料都将非常受欢迎。
谢谢!
答案 0 :(得分:1)
在您的代码中$strOwnerName
是PSCustomObject
。将其转换为字符串更改
$strOwnerName = get-aduser -identity $strGroupOwner.managedby -properties samaccountname |select samaccountname
到
$strOwnerName = get-aduser -identity $strGroupOwner.managedby -properties samaccountname |select -ExpandProperty samaccountname
或
$strOwnerName = (get-aduser -identity $strGroupOwner.managedby).samaccountname
答案 1 :(得分:1)
使用select-object
的-expandproperty
参数。
$strOwnerName = get-aduser -identity $strGroupOwner.managedby -properties samaccountname |select-object -expandproperty samaccountname
另请注意,我使用了select-object
而不是别名select
;在脚本中应该避免使用别名,因为它们对执行环境做出了假设,这可能并不总是正确的。