Powershell 查找本月的第三个星期六

Powershell 查找本月的第三个星期六,powershell,Powershell,我需要找出这个月第三个星期六的日期 我有下面的函数,它找到我这个月的最后一个星期六 function Get-3rdSaturdayOfMonth { $Date = Get-Date $lastDay = new-object DateTime($Date.Year, $Date.Month, [DateTime]::DaysInMonth($Date.Year, $Date.Month)) $diff = ([int] [DayOfWeek]::Saturday) -

我需要找出这个月第三个星期六的日期

我有下面的函数,它找到我这个月的最后一个星期六

function Get-3rdSaturdayOfMonth {
    $Date = Get-Date
    $lastDay = new-object DateTime($Date.Year, $Date.Month, [DateTime]::DaysInMonth($Date.Year, $Date.Month))
    $diff = ([int] [DayOfWeek]::Saturday) - ([int] $lastDay.DayOfWeek)
    if ($diff -ge 0) {
        return $lastDay.AddDays(- (7-$diff))
    }
    else {
        return $lastDay.AddDays($diff)
    }
}
然而,我不知道如何编辑它来找到这个月的第三个星期六

现在,这个函数从一个月的最后一天一直到它之前的星期六。但是如果我想要第三个星期六,我想我需要从一个月的第一天开始计算,而不是最后一天。

基于,因为第三个星期六不可能出现在一个月的15号之前,我们可以从15号开始增加。直到我们找到一个星期六:

$thirdSaturday = [DateTime]::new((Get-Date).Year,(Get-Date).Month,15)
while ($thirdSaturday.DayOfWeek -ne [DayOfWeek]::Saturday) 
{
    $thirdSaturday = $thirdSaturday.AddDays(1)
}