Powershell (Get Date).ToUniversalTime()转换为字符串,但不更改格式
例如,当您使用(Get-Date)cmdlet时,您会得到如下代码所示的良好格式。但是如果您使用ToString(),则会得到一种格式,例如2019年6月22日下午2:25:34 如何将其转换为字符串,但保持原始格式Powershell (Get Date).ToUniversalTime()转换为字符串,但不更改格式,powershell,Powershell,例如,当您使用(Get-Date)cmdlet时,您会得到如下代码所示的良好格式。但是如果您使用ToString(),则会得到一种格式,例如2019年6月22日下午2:25:34 如何将其转换为字符串,但保持原始格式 (Get-Date).ToString() 6/22/2019 2:25:34 PM vs.... Get-Date Saturday, June 22, 2019 2:25:04 PM 使用通用完整格式说明符(U)和ToString()方法,可以将通用时间作为字符串返回
(Get-Date).ToString()
6/22/2019 2:25:34 PM
vs....
Get-Date
Saturday, June 22, 2019 2:25:04 PM
使用通用完整格式说明符(
U
)和ToString()
方法,可以将通用时间作为字符串返回
(Get-Date).ToString('U')
测试日期到字符串的转换和输出类型:
(Get-Date).ToString('U')
Saturday, June 22, 2019 3:11:51 PM
(Get-Date).ToString('U').GetType()
IsPublic IsSerial Name BaseType
-------- -------- ---- --------
True True String System.Object
这种选择可能不是最优雅的方式,但它可以完成任务
((Get-Date).ToUniversalTime() | Out-String).Trim()
有关格式说明符如何工作的更多信息,请参阅。您可以将DateTimeFormatInfo传递给ToString方法
[System.Globalization.DateTimeFormatInfo]::new().FullDateTimePattern
其中:
dddd, dd MMMM yyyy HH:mm:ss
完:
结果:
Saturday, 22 June 2019 11:15:37
当您单独使用
Get Date
时,您似乎对看到的内容有一个非常常见的误解。[grin]您将看到该数据类型的powershell显示系统格式。这与实际数据关系不大。.ToString()
格式化程序使用与显示系统格式化程序不同的格式指令。因此,如果您想获得特定格式,请按照AdminOfThings
或DanielCheng
提及的方式,并为ToString()
方法提供您想要使用的特定格式。请允许我向新来者提供标准建议:如果答案解决了您的问题,请单击大复选标记接受它(✓) 在它旁边,也可以选择向上投票(向上投票要求至少15个信誉点)。如果您发现其他答案有帮助,请向上投票。接受(您将获得2个信誉点)和向上投票有助于未来的读者。有关更多信息,请参阅。如果您的问题尚未完全回答,请提供反馈或建议。
Saturday, 22 June 2019 11:15:37