Powershell 从可变日期中减去 1 天

Joe*_*oey 2 powershell

如何使用包含日期的变量来充当 powershell 中的 get-date 函数?我有一个包含 2016-09-08 的变量 $date。我想从 $date 中减去一天。就像是:

$date = "2016-09-08"
$date.AddDays(-1)
Run Code Online (Sandbox Code Playgroud)

它不起作用。

Ste*_*enP 10

“2016-09-08”是一个字符串。您需要将其转换为日期时间对象。有多种方法可以执行此操作,但下面是将字符串传递给 Get-Date cmdlet 的示例。

$date = Get-Date "2016-09-08"
$date.AddDays(-1).ToString("yyyy-MM-dd")
Run Code Online (Sandbox Code Playgroud)

有关所有可用选项的更多详细信息,请参阅自定义日期和时间格式字符串


小智 6

单行转换和减法。

(Get-Date $date).AddDays(-1)
Run Code Online (Sandbox Code Playgroud)


小智 5

这篇文章确实对我帮助很大,这就是我想要做的。共享,以便其他人可以看到您可以使用 Get-Date 和 AddDays 执行的更多操作。

PS C:\Users\zzz> (Get-Date $date).AddDays(0).ToString("MMddyyyy")
07162019

PS C:\Users\zzz> (Get-Date $date).AddDays(-1).ToString("MMddyyyy")
07152019
Run Code Online (Sandbox Code Playgroud)