Как определить список дат с указанным значением c дней между 2 датами в powershell - PullRequest
1 голос
/ 09 февраля 2020

Итак, у меня есть этот код (спасибо @ reeeky2001 ), который отвечает на мой другой пост Пытается найти способ перечислить все даты пятницы между 2 датами в powershell :

$FiscalStart = [datetime]'2019-03-31'
$date2 = Get-Date -Hour 0 -Minute 0 -Second 0
$EvaluateDates = 1..($date2 - $FiscalStart).Days | % {$($FiscalStart).AddDays($_)} | ? {$_.DayOfWeek -eq 'monday'}
$EvaluateDates

Итак, допустим, что мы находимся 9 февраля 2020 года. Если я запусту следующий код, последний понедельник будет 03 февраля 2020 года. Как я могу исключить последнюю дату, поэтому следующий понедельник (10 февраля, 2020) это в будущем? Как я могу исключить какие-либо даты, когда следующий будущий будет в будущем? Предполагая, что этот код может быть запущен в любой день недели ...

1 Ответ

0 голосов
/ 09 февраля 2020

В конце я добавил "-and $ _ -lt (get-date)"

$FiscalStart = [datetime]'2019-12-31'
$date2 = Get-Date -Hour 0 -Minute 0 -Second 0
1..($date2 - $FiscalStart).Days | % {($FiscalStart).AddDays($_)} | 
  ? { $_.DayOfWeek -eq 'monday' -and $_ -lt (get-date)}


Monday, January 6, 2020 12:00:00 AM
Monday, January 13, 2020 12:00:00 AM
Monday, January 20, 2020 12:00:00 AM
Monday, January 27, 2020 12:00:00 AM
Monday, February 3, 2020 12:00:00 AM
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...