แปลงการประทับเวลาเป็นวันที่ใน PowerShell
หากต้องการแปลงการประทับเวลาเป็นวันที่ใน PowerShell ให้ใช้เมธอด .Net FromFileTimeToUTC() เมธอดนี้ใช้ Int64 เป็นพารามิเตอร์อินพุตและส่งกลับ DateTime
เวลาของไฟล์ Windows หรือการประทับเวลาจะแสดงเป็นเครื่องหมายถูกและจำนวนเต็มที่มีเครื่องหมาย 64 บิต (int64) แสดงถึงจำนวนช่วงเวลา 100 นาโนวินาทีที่ผ่านไปตั้งแต่วันที่ 1 มกราคม 1601 A.D 12:00 น.
ในบทความนี้ เราจะกล่าวถึงวิธีการแปลงการประทับเวลาเป็น DateTime ใน PowerShell
แปลง Int64 TimeStamp เป็น DateTime ใน PowerShell
ไลบรารี .Net DateTime มีเมธอด FromFileTimeUTC() ที่ใช้ fileTime ของ int64 เป็นพารามิเตอร์อินพุต และส่งคืนออบเจ็กต์ DateTime ที่แสดงถึงเวลา UTC ที่เทียบเท่ากับวันที่และเวลา
# Timestamp value
$timestamp = "133174935543788321"
# Convert timestamp to datetime
[datetime]::FromFileTimeUtc($timestamp)
ในสคริปต์ PowerShell ข้างต้น ตัวแปร $timestamp จะเก็บค่าการประทับเวลา int64 บิต หากต้องการแปลงการประทับเวลาเป็นวันที่และเวลา จะใช้เมธอด FromFileTimeUtc() และส่งกลับวันที่และเวลาเทียบเท่าเวลา UTC สำหรับการประทับเวลาที่ระบุ
ผลลัพธ์ของสคริปต์ PowerShell ข้างต้นเพื่อแปลงการประทับเวลาไฟล์ windows ที่ระบุเป็น UTC DateTime ที่เทียบเท่าคือ:
PS C:\Windows> $timestamp = "133174935543788321"
PS C:\Windows> [datetime]::FromFileTimeUtc($timestamp)
06 January 2023 15:45:54
PS C:\Windows> บทสรุป
ฉันหวังว่าบทความข้างต้นเกี่ยวกับวิธีแปลงการประทับเวลาเป็น DateTime ใน PowerShell จะเป็นประโยชน์สำหรับคุณ
คุณสามารถดูหัวข้อเพิ่มเติมเกี่ยวกับคำสั่ง PowerShell Active Directory และข้อมูลพื้นฐานของ PowerShell ได้ในหน้าแรกของ ShellGeek
เนื้อหาที่แนะนำ
วิธีการแปลงสตริงเป็น DateTime ใน PowerShell
การแปลงเวลายุค PowerShell และ DateTime
PowerShell รับวันที่ลบ 1 วัน
PowerShell เปรียบเทียบวันที่แก้ไขไฟล์
PowerShell แปลงวันที่และเวลาเป็น UTC
