我尝试了以下代码来提取域,并且在定义变量时工作得很好
$ADS = 'CN=Lamda,OU=OU_Bloquage,DC=Adminstrateur,DC=6NLG-AD'
但是当我将$ADS
更改为
$ADS = Get-ADUser -Identity 'Lamda' -Properties DistinguishedName |
select DistinguishedName`
我想要的结果是:
DC=Administrateur,DC=6NLG-AD`
下面是我编写的代码
$ADS = Get-ADUser -Identity 'Lamda' -Properties DistinguishedName |
select DistinguishedName
$pattern = '(?i)DC=\w{1,}?\b'
([RegEx]::Matches($ADS, $pattern) | ForEach-Object { $_.Value }) -join ','
答案 0 :(得分:0)
正如Ansgar Wiechers和Lee_Daily早已指出的那样,您真正想要的只是用户的DistinghuishedName属性。
InvalidCodecPrivateDataException
cmdlet默认情况下会返回此属性,因此只需将其作为字符串获取即可:
'Verify that the stream contains valid H.264 content.'
$ dn现在将是一个字符串Get-ADUser
要从该字符串中仅获取以$dn = Get-ADUser -Identity 'Lamda' | Select-Object -ExpandProperty DistinguishedName
开头的部分,有很多选择。
例如:
CN=Lamda,OU=OU_Bloquage,DC=Adminstrateur,DC=6NLG-AD
另一种方式可能是:
DC=
甚至这样的事情都会做到:
$DN.Substring($dn.IndexOf("DC="))
..可能还有更多获得所需结果的方法