簡體   English   中英

在PowerShell中將其他區域日期時間格式轉換為本地日期時間格式

[英]Converting other zone date time format to local date-time format in PowerShell

我正在嘗試執行日期時間比較。

日志文件中的日期時間- 2015年8月4日星期二17:05:41

來自get-date命令的本地系統日期時間-

6. elokuuta 2015 10:18:47

我在Google翻譯上翻譯后的時間是2015年8月6日10:18:47。

如何轉換此日期/時間格式,以便進行比較?

我嘗試了多種方法和選項,但是沒有運氣。

到目前為止,我的腳本是:

# To get today's date
$Today=[datetime]::Today
# Output is 6. elokuuta 2015 0:00:00

$log_date = "Tue Aug  4 17:05:41 2015"

我在某處讀到可以通過使用new-object system.globalization.datetimeformatinfo來實現,但我不知道如何用此方法更改當前日期時間。 https://technet.microsoft.com/zh-CN/library/ff730960.aspx

[DateTime]對象沒有格式。 從某個時間點(01/01/0001 00:00:00.0000000)開始經過的ticks (0.0000001秒)。 該格式僅需要將[DateTime]對象另存為字符串或將其顯示給用戶,因為635744160000000000 ticks對於用戶而言確實不是很容易理解。

您所需要做的就是解析字符串以獲得[DateTime]對象:

$log_date = [datetime]::ParseExact('Tue Aug  4 17:05:41 2015','ddd MMM d HH:mm:ss yyyy',[cultureinfo]::InvariantCulture,'AllowInnerWhite')

現在,有了兩個[DateTime]對象,就可以對其進行比較:

$Today -eq $log_date
$Today -lt $log_date
$Today -gt $log_date

或者找到它們之間的區別:

$Today - $log_date

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM