我正在获取用户的属性,其中之一是管理员。但是,我只想要经理的姓名(CN)。在我当前的代码中,$stdManager
是一个字符串:CN=first last,OU=...,etc,etc
。简单的答案是仅解析字符串,问题是,我正在使用的活动目录与格式非常不一致,这意味着某些管理器为CN=John Smith,OU=...
,而其他管理器为CN=Smith\, John,OU=...
,这也令人头疼考虑到我正在将此信息放入以逗号分隔的csv中。除了解析此字符串并为格式进行大量错误检查外,还有什么方法可以$stdManager = $stdUser.manager.CN
执行?现在考虑一下,如果存在这样的方法,我仍然会遇到Smith\, John
破坏我的csv文件的问题。以简洁的方式处理所有这些的任何技巧?
$stdUser = Get-ADUser $stdSAM -Properties *
$stdManager = $stdUser."manager"
$stdMail = $stdUser."mail"
$d1 = [DateTime]::FromFileTime($stdUser."lastLogonTimestamp")
# etc, etc