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

PowerShell中如何统一转换可变格式时间戳为毫秒?

可变格式时间戳转毫秒的最佳实践

我在脚本中调用外部程序获取时间戳,该程序会输出几种最简格式的时间字符串,示例如下:

"1:33.823"  # 1分钟33秒823毫秒 - 最简格式
"11:33.823" # 11分钟33秒823毫秒 - 短格式
"1:11:33.823" # 1小时11分钟33秒823毫秒 - 长格式

我需要把这些值转换为毫秒,尝试过以下方法但遇到问题:

  • 直接使用[timestamp] $mystring转换时,最简格式会报错。
  • 用[timespan]::ParseExact()方法时,必须预先判断外部程序的所有输出格式,手动适配对应的格式字符串(比如最简格式要用m\:ss\.fff,长格式要用h\:mm\:ss\.fff),操作起来很繁琐。
  • 还考虑过从后往前拆分字符串,手动构建TimeSpan对象的属性。

想请教:PowerShell有没有针对这类场景的标准(最佳实践)转换方法?还是说这种手动适配格式、拆分字符串的“快速粗糙”方案属于常规做法?

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 06:45:46