Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Arrays 将表格格式的变量转换为字符串数组_Arrays_String_Powershell - Fatal编程技术网

Arrays 将表格格式的变量转换为字符串数组

Arrays 将表格格式的变量转换为字符串数组,arrays,string,powershell,Arrays,String,Powershell,新手PS用户在这里 我使用Get-ADOrganizationalUnit返回我想要作为字符串数组的子OU。例如“ou1”、“ou2”、“ou3”等。我发现的示例以表格形式返回数据。我曾尝试使用导出csv,但效果并不理想! 以下是我用来获取数据的方法: $Items = Get-ADOrganizationalUnit -LDAPFilter '(name=*)' -SearchBase 'OU=aa,OU=bb,OU=cc,OU=dd,DC=AD,DC=contoso,DC=CA' -Sear

新手PS用户在这里

我使用Get-ADOrganizationalUnit返回我想要作为字符串数组的子OU。例如“ou1”、“ou2”、“ou3”等。我发现的示例以表格形式返回数据。我曾尝试使用导出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”等 字符串数组将在另一个脚本中用于创建OU的下拉列表。
非常感谢您的帮助

使用
Foreach-Object
Foreach
)cmdlet将名称属性提取到字符串数组中,而不是通过
格式表(或
选择对象

[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 '","')`""

除非必须,否则不要格式化表(或任何其他格式-*)。为什么要格式化输出
Get ADOrganizationalUnit
返回对象,而不是文本。我使用了scconfigmgr.com中的示例,希望将输出更改为字符串数组。我还尝试使用select Name,而不是Format Table Name您想要什么类型的输出?仅列出OU名称?我想要一个字符串数组。我有一个脚本要在SCCM任务序列期间运行,其中前线技术人员将看到一个下拉列表,其中列出了新成像系统要放置的可用OU。该脚本需要4个参数,其中一个是OU的字符串数组。第二部分肯定比我的foreach行更优雅。非常感谢。