如何使用powershell脚本说明是否启用了直接下属中的用户

如何使用powershell脚本说明是否启用了直接下属中的用户,powershell,Powershell,我在服务器上有一个PowerShell脚本,运行良好,但我需要在其中添加一个if cast。 如果“直接下属”中的所有用户即将到期,此脚本将检查这些用户,并向其经理发送邮件。 问题:我想在我的PowerShell中解释,如果禁用了用户,则不发送电子邮件;如果启用了用户间接报告,则发送邮件或继续脚本的其余部分。我不知道如何以PowerShell格式这样编写:( 我在这里附上我的脚本的一部分 您可以在代码中执行以下操作: $TargetExpirationDate = Get-Date -Year

我在服务器上有一个PowerShell脚本,运行良好,但我需要在其中添加一个if cast。 如果“直接下属”中的所有用户即将到期,此脚本将检查这些用户,并向其经理发送邮件。 问题:我想在我的PowerShell中解释,如果禁用了用户,则不发送电子邮件;如果启用了用户间接报告,则发送邮件或继续脚本的其余部分。我不知道如何以PowerShell格式这样编写:( 我在这里附上我的脚本的一部分


您可以在代码中执行以下操作:

$TargetExpirationDate = Get-Date -Year 2019 -Month 01 -Day 31
$_.DirectReports | Foreach-Object {
    $userDetails = Get-Aduser -Filter "DistinguishedName -eq '$_' -and AccountExpirationDate -le '$TargetExpirationDate' -and Enabled -eq '$true'" -Properties AccountExpirationDate,EmailAddress
    # Other code
}
$TargetExpirationDate
设置为要检查的过期日期。该代码将识别过期日期
$TargetExpirationDate
$userDetails
之前的已启用用户。您可以使
$userDetails
包含所有通过执行以下操作满足标准:

$TargetExpirationDate = Get-Date -Year 2019 -Month 01 -Day 31
$userDetails = $_.DirectReports | Foreach-Object {
    Get-Aduser -Filter "DistinguishedName -eq '$_' -and AccountExpirationDate -le '$TargetExpirationDate' -and Enabled -eq '$true'" -Properties AccountExpirationDate,EmailAddress
    # Other code
}

请不要发布代码图像,将您的代码以块代码格式复制到问题中:如果启用了$directReports中的用户,请向经理发送电子邮件,否则不要向经理发送电子邮件……这有点复杂,对不对?(添加
-和($userDetails.enabled-eq$true)
如果$userdetails.accountexpirationdate
很难看到您的代码