Powershell : Check time between a range to execute something.
這是我這陣子在研究一段客製化的PS時候意外找到。
$str = Get-Date '09:25'
$end = Get-Date '09:30'
$now = Get-Date
if ($str.TimeOfDay -le $now.TimeOfDay -and $end.TimeOfDay -ge $now.TimeOfDay)
{
Write-host "OK"
}
我想應該不用解釋太多。
$str : 設定開始時的時間
$end : 設定結束的時間
$now : 現在
如果開始的時間(9:25)<=現在的時間,同時結束的時間(9:30)>=現在的時間
就執行裡面的內容
附帶說明,可以替換的
-eq | 等於 |
-ne | 不等於 |
-ge | 大於等於 |
-gt | 大於 |
-lt | 小於 |
-le | 小於等於 |
-like | Wildcard模糊比對(字元數字) – Wildcard comparison |
-notlike | Wildcard模糊比對(字元數字) – Wildcard comparison |
-match | 比對格式 – Regular expression comparison |
-notmatch | 比對相似 – Regular expression comparison |
-replace | 替換 -Replace operator |
-contains | Containment operator |
-notcontains | Containment operator |
-in | 類似於 -comtains,但是相反是動作 |
-notin | 類似於 -notcontains ,但是是相反動作 |