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

如何用PowerShell将$Time变量的Datetime转换为yyyy-mm-dd hh:mm:ss格式

解决方案

没问题,这可以通过PowerShell的日期时间解析和格式化能力快速实现。以下是针对你需求的完整代码:

# 示例$Time变量(替换成你实际的变量即可)
$Time = @(
    "Monday, November 30, 2020 8:55:01 AM",
    "Sunday, October 18, 2020 11:10:01 PM"
)

# 转换并生成格式化后的日期时间列表
$formattedDateTimeList = $Time | ForEach-Object {
    # 将英文格式的日期字符串解析为DateTime对象
    $dateObj = [DateTime]::Parse($_)
    # 格式化为"yyyy-MM-dd HH:mm:ss"标准格式
    $dateObj.ToString("yyyy-MM-dd HH:mm:ss")
}

# 输出结果
$formattedDateTimeList

关键说明:

  • 解析字符串:[DateTime]::Parse()能自动识别你提供的英文日期时间格式(比如带星期、月份全称的格式),将字符串转换为可操作的DateTime对象。
  • 格式控制:ToString("yyyy-MM-dd HH:mm:ss")中的格式符要注意:
    • yyyy:4位年份,MM:2位月份(大写避免和分钟mm混淆),dd:2位日期
    • HH:24小时制的小时(比如原字符串的11 PM会转换为23),如果需要12小时制可以换成小写hh
  • 容错处理(可选):如果你的$Time变量中可能存在无效的日期字符串,可以添加错误处理避免脚本中断:
$formattedDateTimeList = $Time | ForEach-Object {
    $parsedDate = $null
    if ([DateTime]::TryParse($_, [ref]$parsedDate)) {
        $parsedDate.ToString("yyyy-MM-dd HH:mm:ss")
    } else {
        Write-Warning "无法解析日期时间: $_"
        # 可选择保留原字符串或跳过,这里选择保留
        $_
    }
}

运行上述代码后,$formattedDateTimeList就会存储所有转换后的标准格式日期时间,直接输出就能得到你需要的列表。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 07:49:15