【发布时间】:2018-01-22 22:50:27
【问题描述】:
我有一个接受来自用户的一些 DN 的 GUI。我知道如何获取文本,但我一生都无法弄清楚如何将此 DN 拆分为各个部分。零件的数量可能会有所不同。例如:
$string1 = "ou=this,ou=is,dc=a,dc=string"
$string2 = "ou=this,ou=is,ou=another,dc=dn,dc=string
我正在尝试做的是将 ou 与 dc 分开,如果它们不存在则创建 ou。我只是不知道如何将 ou 与 dc 分开并将它们变成单独的字符串,所以我将留下:
$newString1 = "ou=this,ou=is"
$newString2 = "dc=a,dc=string"
$newString3 = "this,ou=is,ou=another"
$newString4 = "dc=dn,dc=string
我知道我可以使用$string1.Split(",") 拆分字符串,但我现在不知道如何将各个值存储在新变量中。我对 PowerShell 相当陌生,所以任何建议都将不胜感激。
我知道我可以仅根据我拥有的信息创建 ou,但我需要将它们分开以用于将在代码中完成的其他工作。也很高兴看到他们分开,这样我就可以单独抓住欧了。
【问题讨论】:
-
您应该将这些附加注释编辑到您的问题中,而不是添加 cmets。另外,您是否正在使用两个专有名称?或者是否有一个变量号,比如从文件中读取?如果您有 2 个 DN,则拥有
$newString1到$newString4变量是可以的,但如果您有 20...或 200 个,则没有那么多。 -
我将获得两个 DN。一个用于组,一个用于用户。我基本上是让用户定义他们希望组和用户在 Active Directory 上的位置,然后让我的脚本创建这些目录。总而言之,我真的很想学习如何在 Powershell 中将这样的字符串分解成单独的块,因为它将是用户定义的。
标签: string powershell join split distinguishedname