我正在尝试用-30分钟显示当前日期。并以UTC格式获取输出。
以下是我尝试过的事情。
Clear-Host
$dte = Get-Date
$Minusthirty= $dte.AddMinutes(-30)
Write-Output "This is CurrentDate: " $dte
Write-Output "This is Minus30: " $Minusthirty
输出值
2020年4月1日,星期三,凌晨2:38:43
我想将输出显示为“2020-04-01T00:30”
请给我建议。
最佳答案
您显示的不是UTC格式-您所需的输出格式具有时间成分,但没有UTC偏移量(-00:00
)或UTC指示符(Z
)。
要以问题所示的格式格式化本地时间减去30分钟,请执行以下操作:
[datetime]::Now.AddMinutes(-30).Tostring('yyyy-MM-ddTHH:mm')
以相同的格式表示当前UTC时间点减去30分钟:
[datetime]::UtcNow.AddMinutes(-30).Tostring('yyyy-MM-ddTHH:mm')
注意:
[datetime]::Now
与(Get-Date)
相同。 [datetime]::UtcNow
(缺少繁琐的(Get-Date).ToUniversalTime()
)的方法,但是即将到-AsUtc
切换到Get-Date
了,大概是在7.1中。参见this GitHub pull request。 关于powershell - 减去30分钟即可获取日期并以UTC显示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/60960351/