You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Get-ADUser查询禁用AD用户时无法按LastLogonDate排序的问题

问题原因及修复方案

  • 现有过滤条件仅会查询单个指定用户,单条结果不存在排序效果
    你当前命令的Filter参数写死了samaccountname -eq '$user',每次仅返回匹配这一个账号名的用户对象,单条结果自然无法体现排序逻辑。如果要查询所有禁用的AD用户,需要删除该过滤条件。
  • 部分从未登录过的账号LastLogonDate属性为空值,排序时空值会默认排在最前,容易被误认为排序未生效
  • -Properties *会拉取账号的全部AD属性,冗余查询不仅降低执行效率,极端情况下还可能出现属性拉取不完整的问题,建议明确指定需要的属性。

修正后的命令

查询所有禁用AD用户,按最后登录日期升序排序:

Get-ADUser -Filter "enabled -eq '$False'" -Properties samaccountname, displayname, emailaddress, LastLogonDate | 
Select-Object samaccountname, displayname, emailaddress, LastLogonDate |
Sort-Object -Property LastLogonDate

如果需要按最后登录日期倒序(最近登录的排在最前),可以给Sort-Object加-Descending参数:

Get-ADUser -Filter "enabled -eq '$False'" -Properties samaccountname, displayname, emailaddress, LastLogonDate | 
Select-Object samaccountname, displayname, emailaddress, LastLogonDate |
Sort-Object -Property LastLogonDate -Descending

如果需要过滤掉从未登录过的账号(排除LastLogonDate为空的结果),可以在管道中加过滤条件:

Get-ADUser -Filter "enabled -eq '$False'" -Properties samaccountname, displayname, emailaddress, LastLogonDate | 
Where-Object { $_.LastLogonDate -ne $null } |
Select-Object samaccountname, displayname, emailaddress, LastLogonDate |
Sort-Object -Property LastLogonDate

内容的提问来源于stack exchange,提问作者Daniel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 04:06:01