2015-02-12 157 views
5
$olddate = Get-Date -Date "31-dec-2013 00:00:00" -Format d.M.yyyy 
$Now = Get-date -Format d.M.yyyy 

如何檢查$ olddate是否早於$ Now?檢查過去的日期

回答

5

如果將它們存儲爲DateTime,而不是爲格式的字符串,您可以使用格式運算符(-f)小於運算符(-lt),就像一般的數字,然後使用,當你需要實際顯示日期:

$olddate = Get-Date -Date "31-dec-2013 00:00:00" 
$Now = Get-Date 
if($olddate -lt $Now){ 
    "`$olddate is in the past!" 
    "{0:d.M.yyyy}" -f $olddate 
    "{0:d.M.yyyy}" -f $Now 
} 
+0

我詢問之前檢查過。不起作用 – mzv 2015-02-12 09:18:40

+1

**已更新的答案** - 當使用具有Get-Date的'-Format'時,輸出只是一個字符串,等到您確實需要顯示或輸出它來格式化字符串時,這樣你不會失去「可比性」 – 2015-02-12 09:20:23

+0

好吧,現在我明白了。謝謝! – mzv 2015-02-12 09:25:24

1

您還可以對Ticks進行比較。 I.e .: $olddate.Ticks將是-lt,然後是$Now.Ticks