Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/13.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
Powershell和Get ADUser-第2部分-将A和B组合在一起_Powershell_Split_Active Directory - Fatal编程技术网

Powershell和Get ADUser-第2部分-将A和B组合在一起

Powershell和Get ADUser-第2部分-将A和B组合在一起,powershell,split,active-directory,Powershell,Split,Active Directory,不久前我发布了一个问题,得到了回答,以完成我所需要的- 答复 现在我需要添加一些其他字段名称、SAM帐户、电子邮件,并检查电子邮件*。这是我的第二个问题 Powershell查询 我如何将上一个问题的答案中提供的内容与此查询结合起来,以获得以下输出 我还需要检查电子邮件,如果@company.com,则EType=YES 预期的最终结果 提前谢谢你 我相信您正在寻找类似于如果您的@标题正确: Get-ADUser -Filter * -Properties CanonicalName,Disti

不久前我发布了一个问题,得到了回答,以完成我所需要的-

答复

现在我需要添加一些其他字段名称、SAM帐户、电子邮件,并检查电子邮件*。这是我的第二个问题

Powershell查询

我如何将上一个问题的答案中提供的内容与此查询结合起来,以获得以下输出

我还需要检查电子邮件,如果@company.com,则EType=YES

预期的最终结果


提前谢谢你

我相信您正在寻找类似于如果您的@标题正确:

Get-ADUser -Filter * -Properties CanonicalName,DistinguishedName,DisplayName,SamAccountName,EmailAddress | Select-Object @{Label="OU Path";Expression={$_.CanonicalName.Split("/")[1]}},
@{Label="Where";Expression={$_.CanonicalName.Split("/")[2]}},
@{Label="Type";Expression={if ($_.CanonicalName.Split("/").Count -ge 5) { $_.CanonicalName.Split("/")[3] } else { 'N/A' }}},
@{Label="Distinguished Name";Expression={$_.DistinguishedName}},
@{Label="Name";Expression={$_.DisplayName}},
@{Label="SAM Account";Expression={$_.SAMAccountName}},
@{Label="E-mail";Expression={$_.EmailAddress}},
@{Label="EType";Expression={ if($_.EmailAddress.IndexOf("@company.com") -gt -1) { 'YES' } else { 'NO' } }} | Format-Table

谢谢,但当我运行它时,我只得到了可分辨名称和SAM Account。好吧,canonicalname不是ADUser属性,我以为你已经解决了这一部分。你错过了get ADUser-筛选器后的-Properties。当我添加时,它起作用了。非常感谢你!你可以编辑我的帖子并在那里添加属性,或者将它们作为评论发布,这样我就可以修复它了。我原本以为这无关紧要,因为过滤器是*。
$Headers= @{Label="OU Path";Expression={$_.CanonicalName}},
@{Label="Distinguished Name";Expression={$_.DistinguishedName}},
@{Label="Name";Expression={$_.DisplayName}},
@{Label="SAM Account";Expression={$_.SAMAccountName}},
@{Label="E-mail";Expression={$_.EmailAddress}},

Get-ADUser -Filter * -Properties
CanonicalName,DistinguishedName,DisplayName,
SamAccountName,EmailAddress | Select $Headers
OU          Where     Type      Name     SAM      Email               *EType
-----------------------------------------------------------------------------
DS          AMS       N/A       Name1    brname1  name1@company.com   YES
DS          TECHM     N/A       Name2    xsname2  name2@company.com   YES
Developers  CH        Agencies  Name3    agname3  name3@gmail.com     NO
Developers  CH        Market    Name4    chname4  name4@company.com   YES
Developers  HK        Agencies  Name5    agname5  name5@other.com     NO
Developers  HK        Market    Name6    hkname6  name6@company.com   YES
Get-ADUser -Filter * -Properties CanonicalName,DistinguishedName,DisplayName,SamAccountName,EmailAddress | Select-Object @{Label="OU Path";Expression={$_.CanonicalName.Split("/")[1]}},
@{Label="Where";Expression={$_.CanonicalName.Split("/")[2]}},
@{Label="Type";Expression={if ($_.CanonicalName.Split("/").Count -ge 5) { $_.CanonicalName.Split("/")[3] } else { 'N/A' }}},
@{Label="Distinguished Name";Expression={$_.DistinguishedName}},
@{Label="Name";Expression={$_.DisplayName}},
@{Label="SAM Account";Expression={$_.SAMAccountName}},
@{Label="E-mail";Expression={$_.EmailAddress}},
@{Label="EType";Expression={ if($_.EmailAddress.IndexOf("@company.com") -gt -1) { 'YES' } else { 'NO' } }} | Format-Table