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

如何格式化PowerShell查询AD用户结果中的多个日期字段为短日期

解决AD用户查询结果日期字段短日期格式化问题

直接给可行的修改代码:

'user1','user2' | ForEach-Object {
    Get-ADUser -Identity $_ -Properties AccountExpirationDate, WhenChanged |
    Select-Object Name, DisplayName, SamAccountName, Enabled,
        @{Name='AccountExpirationDate'; Expression={ if ($_.AccountExpirationDate) { $_.AccountExpirationDate.ToString('d') } }},
        @{Name='WhenChanged'; Expression={ $_.WhenChanged.ToString('d') }}
} | Format-Table -AutoSize

关键说明:

  1. 避免不必要的属性查询:不用Properties *拉取所有属性,只指定需要的AccountExpirationDate和WhenChanged,提升查询效率。
  2. 用计算属性处理日期格式化:Select-Object的普通字段参数不支持直接加格式字符串,必须通过哈希表定义计算属性:
    • Name保持原字段名,保证表头一致性
    • Expression中调用ToString('d'),'d'是PowerShell内置的短日期格式符,会输出符合系统区域设置的短日期(比如2023/11/04)
    • 给AccountExpirationDate加空值判断,避免无过期日期的账号触发报错
  3. 优化表格显示:加-AutoSize让表格列宽自适应内容,避免排版混乱

你也可以用Get-Date替代ToString('d'),写法是Get-Date $_.WhenChanged -Format 'd',效果完全一致,选自己习惯的方式即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 15:32:03