powershell - GetDate 为负 30 分钟并以 UTC 格式显示

标签 powershell powershell-2.0

我正在尝试以 -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) 相同。

  • 从 PowerShell 7.0 开始,没有与 [datetime]::UtcNow 直接等效的函数(缺少繁琐的 (Get-Date).ToUniversalTime()) >) 但 -AsUtc 切换到 Get-Date 即将到来,大概是在 7.1 中;请参阅this GitHub pull request .

关于powershell - GetDate 为负 30 分钟并以 UTC 格式显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60960351/

相关文章:

powershell - Docker 机器错误 : Hyper-V PowerShell Module is not available

sql-server - 带有 PowerShell 脚本的 SSIS 刷新 Excel 连接?

Powershell 前景色

arrays - 在Powershell数组中查找最接近的数值

powershell - 如何编写多个对象链接方法调用以继续跨多行代码?

powershell - 使用 Copy-Item 复制文件夹 - 不同的行为

powershell - 显示进程消耗内存和CPU时间

powershell - 使用Powershell将ProcessParameters运行时(MSBuildArguments)传递给tfs 2010构建定义

regex - 如何使用Powershell从文件构造哈希表?

Powershell:压缩文件