PowerShell使用New-TimeSpan计算时间差


关键词

PowerShell New-TimeSpan 时间差

摘要

PowerShell中有一个New-TimeSpan的cmdlet,使用它可以很方便的计算两个时间之间的差值。差值还可以提取出年、月、日、时、分、秒。

PowerShell中有一个New-TimeSpan的cmdlet,使用它可以很方便的计算两个时间之间的差值。差值还可以提取出年、月、日、时、分、秒。

以前,洪哥想要知道当时时间到十一放假还有多少天时,洪哥一般会写一个VBScript脚本来简单计算一下。这个VBScript脚本很简单,只有一句话:
MsgBox DateDiff("d", Now(), "2013-10-1")

新建一个纯文本文件,把这句话放进去。然后再把这个文件的文件名改为xxx.vbs,双击即可看到效果。当然,如果是你对还有多少秒即将迎来下班,可以作如下修改:
MsgBox DateDiff("s", Now(), Date() & " 18:00:00")  '悲摧的洪哥的公司是18点下班

以上两个都不是我们今天要讨论的重点,重点是在PowerShell中来完成同样的事情。PowerShell中有一个非常有用的cmdlet小东西,那就是New-TimeSpan。我们来看看它有什么神奇之处。

看看下面的三句命令:
PS C:\Users\zhanghong> (New-TimeSpan 2013-10-1).days
-12
PS C:\Users\zhanghong> (New-TimeSpan -end 2013-10-1).days
12
PS C:\Users\zhanghong> (New-TimeSpan 2013-10-1 -end 2013-10-1).days
0

看懂了吗?如果没看懂,洪哥来解释下。
第一个命令,使用New-TimeSpan来计算2013-10-1到当前时间相隔多少天。因为当前是2013-9-18(国难日啊,我们要认真学习,以雪国耻!),这个时间比10月1日早,所以得到的天数是-12。
第二个命令,反过来了,计算当前时间到2013-10-1还差多少天,结果就是正12天了。
第三个命令,计算2013-10-1到2013-10-1相差多少天,很显然,结果为零!

好了,关于PowerShell中使用New-TimeSpan计算时间差,本文就介绍这么多,希望对大家有所帮助,谢谢!

 

要饭二维码

洪哥写文章很苦逼,如果本文对您略有帮助,可以扫描下方二维码支持洪哥!金额随意,先行谢过!大家的支持是我前进的动力!

文章的版权


如果您在服务器运维、网络管理、网站或系统开发过程有需要提供收费服务,请加QQ:8771947!十年运维经验,帮您省钱、让您放心!
亲,如果有需要,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D

« PowerShell中的prompt函数与自定义提示符 PowerShell获取当前命令行窗口进程的PID »