1

我目前正在学习如何使用 powershell,并且想知道您将如何制作像这样的简单过程。

如果时间在上午 9 点到下午 12 点之间,则写信给“喝咖啡”,否则什么也不写。

4

3 回答 3

2

有很多方法可以做到这一点。

if ((9,10,11) -contains (get-date).Hour) { "get coffee" }

if ((get-date).hour -ge 9 -and (get-date).hour -le 11) { "get coffee" }

if (((get-date -hour 12 -min 0 -sec 0) - (get-date)).hours -in 0..2) { ... }

这可能是一个有趣的社区 wiki 问题。

于 2013-05-16T20:25:11.773 回答
1

这是我能得到的最短的......

if(Get-Date | ? {($_.hour -ge 9) -and ($_.hour -le 12)}){"get coffee"}
于 2013-05-16T20:02:02.747 回答
0

My 2 cents (using .net):

[datetime]$now = [datetime]::now.Tostring("T",[System.Globalization.CultureInfo]::InvariantCulture )
$low = [datetime] "09:00:00 am"
$hi = [datetime] "12:00:00 pm"
if ( $now -ge $low -and $now -le $hi  ) { "Coffee Time!" } else {"Work!"}
于 2013-05-17T10:01:55.583 回答