Добавление к тому, что сказал jisaak: «рабочий день» относится к организации. Некоторые организации не работают на праздники, которые делают другие организации. Если вы хотите обрабатывать отпуск правильно, вы будете нуждаться в поименный список праздников для вашего бизнеса
Опуская детали форматирования (что OP, кажется, понимают) это должно сделать это:
# $date is input date
$nextBizDay = $date.adddays(1)
# You would probably want to generate the follow list programmatically,
# instead of manually as done here
$holidays = 1, <# New Years #>
18, <# MLK day 2016 #>
<# other holidays encoded as Day Of Year #>
360 <# Christmas in a Leap Year #>
# An alternative to a list of holidays like this is to find a web service
# you can query to get the holidays for a given year
while ($nextBizDay.DayOfWeek -eq 'Saturday' -or
$nextBizDay.DayOfWeek -eq 'Sunday' -or
$nextBizDay.DayOfYear -in $holidays) {
if ($nextBizDay.DayOfYear -gt 366) {
throw "No next business day this year. Need to add additional logic"
}
$nextBizDay = $nextBizDay.adddays(1)
}
Вы имеете в виду понедельник - пятница ? Как вы работаете с праздником? –
это может быть вам полезно: https://www.reddit.com/r/PowerShell/comments/4j9usl/getdate_next_business_day/ –