新手PS用户在这里。
我使用Get-ADOrganizationalUnit将我想要的子OU作为字符串数组返回。 IE" ou1"," ou2"," ou3"等。我找到的示例以表格形式返回数据。我尝试过使用export-csv,但这根本不能正常工作! 以下是我用来获取数据的内容:
$Items = Get-ADOrganizationalUnit -LDAPFilter '(name=*)' -SearchBase 'OU=aa,OU=bb,OU=cc,OU=dd,DC=AD,DC=contoso,DC=CA' -SearchScope OneLevel | Format-Table Name -HideTableHeaders
返回:
ThisOU
ThatOU
AnotherOU
等
但我需要它的结构为 " ThisOU"" ThatOU"" AnotherOU",等 字符串数组将在另一个脚本中用于创建OU的下拉列表。 非常感谢任何帮助!
答案 0 :(得分:1)
使用Format-Table
(Select-Object
)cmdlet将name属性解压缩为字符串数组,而不是通过Foreach-Object
(或foreach
)进行管道传输。
[string[]] $items = Get-ADOrganizationalUnit -LDAPFilter '(name=*)' -SearchBase 'OU=aa,OU=bb,OU=cc,OU=dd,DC=AD,DC=contoso,DC=CA' | foreach Name
如果您想将这个字符串数组转换为“name1”,“name2”,“name3”行的单个字符串,您可以这样做:
$formattedNames = "`"$($items -join '","')`""