ค้นหาเว็บไซต์

รับ FileHash ใน PowerShell- รับแฮชของไฟล์


บ่อยครั้งที่ฉันต้องดำเนินการตรวจสอบ MD5 สำหรับไฟล์ที่ดาวน์โหลดจากอินเทอร์เน็ตหรือได้รับจากผู้ส่ง เพื่อตรวจสอบว่าไฟล์ที่ถ่ายโอนนั้นถูกต้อง และหากไม่เป็นเช่นนั้นก็ถือว่าไฟล์เสียหาย การใช้ PowerShell Get-FileHash cmdlet เราสามารถรับแฮชไฟล์ md5 หรือแฮช SHA ของไฟล์ได้อย่างง่ายดาย

PowerShell Get-FileHash cmdlet คำนวณค่าแฮชของไฟล์โดยใช้อัลกอริทึมแฮชที่แตกต่างกัน ค่าแฮชใช้เพื่อเปรียบเทียบไฟล์สองไฟล์ที่มีเนื้อหาเหมือนกันหรือไม่ หากทั้งสองไฟล์มีค่าแฮชเท่ากัน แสดงว่าไฟล์มีเนื้อหาเหมือนกัน Get-File มีประโยชน์เมื่อคุณต้องการตรวจสอบแฮชของไฟล์ที่ดาวน์โหลดจากอินเทอร์เน็ต

หากต้องการรับแฮชของไฟล์ คุณสามารถใช้อัลกอริธึม MD5 หรือ SHA เพื่อรับแฮชของไฟล์และเปรียบเทียบกับไฟล์อื่นๆ Get-FileHash พารามิเตอร์อัลกอริทึมอนุญาตให้ใช้อัลกอริทึมการแฮชที่แตกต่างกันตามที่ระบุด้านล่าง

  • เอ็มดี5
  • SHA1
  • SHA256
  • SHA384
  • SHA512

อัลกอริธึมแฮชเริ่มต้นคือ SHA256

ในบล็อกโพสต์นี้ ผมจะอธิบายวิธีใช้ PowerShell Get-FileHash cmdlet เพื่อรับ MD5 Checksum หรือ SHA Checksum สำหรับไฟล์หรือไฟล์รูปภาพ ISO ใน PowerShell

PowerShell รับ-FileHash

Cmdlet: รับ-FileHash

ไวยากรณ์:

Get-FileHash
   [-Path] <String[]>
   [[-Algorithm] <String>]
   [<CommonParameters>]

Get-FileHash cmdlet คำนวณค่าแฮชสำหรับไฟล์โดยใช้อัลกอริทึมการแฮชที่ระบุ แฮชกำหนดค่าเฉพาะให้กับเนื้อหาของไฟล์

มาทำความเข้าใจกับ Get-FileHash cmdlet ด้วยตัวอย่างต่างๆ ดังที่แสดงด้านล่าง

ใช้ Get-FileHash เพื่อคำนวณค่าแฮชสำหรับไฟล์

ให้คำนวณค่าแฮชสำหรับไฟล์ ChecksumUtility.exe โดยใช้ PowerShell Get-FileHash cmdlet

PS D:\Temp> Get-FileHash .\ChecksumUtility.exe

ในตัวอย่างข้างต้น การใช้ PowerShell Get-FileHash จะคำนวณค่าแฮชสำหรับไฟล์ ตามค่าเริ่มต้น Get-FileHash จะใช้อัลกอริธึม SHA256 ซึ่งสามารถดูได้ในภาพเอาต์พุตด้านล่าง

การใช้ Get-FileHash รับแฮชไฟล์ md5

ตัวอย่างเช่น ฉันได้ดาวน์โหลดไฟล์ Win2016_OS.iso จากบัญชี MSDN เราจะตรวจสอบความถูกต้องของไฟล์ที่ดาวน์โหลดมาว่าถูกต้องหรือไม่ตามที่กำหนดสำหรับไฟล์ ISO บนเว็บไซต์ MSDN

ใช้ แฮช MD5 ใน PowerShell เพื่อคำนวณแฮชและรับไฟล์ ISO แฮชตามที่ระบุด้านล่าง

PS D:\Temp> Get-FileHash -Algorithm MD5 .\Win2016_OS.iso

ในตัวอย่าง Get-FileHash ข้างต้น โดยใช้พารามิเตอร์อัลกอริทึม แฮช MD5 ใน PowerShell รับค่าแฮช ms5 สำหรับอิมเมจ ISO

ผลลัพธ์ของคำสั่งข้างต้นจะได้รับแฮชของไฟล์ md5 ดังต่อไปนี้

เคล็ดลับเด็ด: แทนที่ข้อความในสตริงโดยใช้ PowerShell!

รับแฮชของไฟล์ SHA384

เราจะใช้ไฟล์ ISO ที่ดาวน์โหลดด้านบนจากอินเทอร์เน็ตเพื่อคำนวณแฮชของไฟล์ SHA384 ดังต่อไปนี้

PS D:\Temp> Get-FileHash -Algorithm SHA384 .\Win2016_OS.iso

ในตัวอย่าง Get-FileHash ข้างต้น ใช้อัลกอริทึมแฮช SHA384 ที่ระบุโดยพารามิเตอร์อัลกอริทึม และรับแฮช SHA384 ของไฟล์ ISO

ผลลัพธ์ของอัลกอริทึมแฮช SHA384 ดังต่อไปนี้

เคล็ดลับเด็ด: วิธีที่ดีที่สุดในการรีสตาร์ทบริการตัวจัดคิวงานพิมพ์ใน PowerShell!

รับ FileHash แบบเรียกซ้ำสำหรับไฟล์

หากคุณต้องการรับแฮชของไฟล์ทั้งหมดในโฟลเดอร์ที่ระบุ ให้ใช้คำสั่ง Get-FileHash พร้อมพารามิเตอร์ Recurse เพื่อคำนวณแฮชของไฟล์แบบวนซ้ำโดยใช้อัลกอริทึม SHA256 เริ่มต้นและส่งออกไฟล์แฮชไปยังไฟล์ csv

Get-ChildItem -Path D:\PowerShell\ -Recurse -Filter *.exe | Get-FileHash | Export-Csv -Path D:\PowerShell\FilesHash.csv -NoTypeInformation

ในตัวอย่างข้างต้น Get-FileHash คำนวณแฮชของไฟล์ในโฟลเดอร์ที่ระบุแบบเรียกซ้ำ และใช้ Export-csv cmdlet ใน PowerShell จะได้รับเอาต์พุต filehash ไปยังไฟล์ csv

บทสรุป

ฉันหวังว่าคุณคงพบบทความด้านบนเกี่ยวกับวิธีใช้ PowerShell Get-FileHash เพื่อรับ แฮช MD5 ของไฟล์ หรือ แฮช SHA ของไฟล์ ใน PowerShell

PowerShell Get-FileHash cmdlet พร้อมพารามิเตอร์ Algorithm ใช้เพื่อคำนวณค่าแฮชสำหรับไฟล์หรือไฟล์อิมเมจ ISO ค่าเริ่มต้นของอัลกอริทึม Get-FileHash คือ SHA256

คุณสามารถค้นหาหัวข้อเพิ่มเติมเกี่ยวกับคำสั่ง PowerShell Active Directory และพื้นฐาน PowerShell ได้ในหน้าแรกของ ShellGeek

บทความที่เกี่ยวข้อง