gpt4 book ai didi

Powershell 高尔夫 : Next business day

转载 作者:行者123 更新时间:2023-12-03 12:27:07 26 4
gpt4 key购买 nike

如何使用powershell查找下一个工作日?

最佳答案

嗯,我的手机允许我设置工作日,但 Windows/.NET 不会,所以我假设周一到周五。

注意:由于问题包括“高尔夫”,我正在打这个问题,即尝试为脚本使用尽可能少的字节。因此,代码不一定是可读的。

最简单和最直接的方法是从今天开始,添加一天,看看它是否在想要的范围内:

PS> $d = [DateTime]::Now.AddDays(1); while ($d.DayOfWeek -eq "Saturday" -or $d.DayOfWeek -eq "Sunday") { $d = $d.AddDays(1) }; $d
Montag, 22. Juni 2009 19:50:27

不过,我们可以将其缩短一点:
PS> $d=(Get-Date)+"1";for(;6,0-contains$d.DayOfWeek){$d+="1"}$d
Montag, 22. Juni 2009 19:52:31

但是我们也可以使用管道进行不同的尝试。下一个工作日至少是一天,最多是三天,所以我们可以生成一个可能日期的列表并相应地过滤它们,最后,选择第一个:
PS> @(1..3|%{(Get-Date).AddDays($_)}|?{$_.DayOfWeek -ge "Monday" -and $_.DayOfWeek -le "Friday"})[0]
Montag, 22. Juni 2009 22:11:19

或更短:
PS> @(1..3|%{(Get-Date)+"$_"}|?{1..5-contains$_.DayOfWeek})[0]
Montag, 22. Juni 2009 19:55:53

通过让范围达到 4,我们可以保证它总是至少返回两个工作日并保存 @ 运算符以强制数组:
PS> (1..4|%{(Get-Date)+"$_"}|?{1..5-contains$_.DayOfWeek})[0]
Montag, 22. Juni 2009 20:24:06

关于Powershell 高尔夫 : Next business day,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1018873/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com