К счастью, [datetime]
структуры имеют свойство DayOfWeek
, которое мы можем использовать, чтобы проверить это!
Просто увеличивайте дату на 1 день, пока не достигнете Wednesday
:
function Get-UpcomingWednesdayAt5
{
param(
[datetime]$Date
)
while($Date.DayOfWeek -ne [System.DayOfWeek]::Wednesday){
# advance 1 day at a time until its wednesday
$Date = $Date.AddDays(1)
}
# Create new [datetime] object with same Date but Time set to 5AM
return Get-Date -Date $Date -Hour 5
}