วิธีรับรายละเอียดของไฟล์ใน PowerShell
คุณต้องการรับข้อมูลเมตาของไฟล์โดยใช้ PowerShell หรือไม่ ในบทช่วยสอนนี้ ฉันจะอธิบายวิธีรับรายละเอียดของไฟล์ใน PowerShell เราจะกล่าวถึงวิธีการต่างๆ ในการดึงข้อมูลเมตาของไฟล์ คุณลักษณะ และเนื้อหา ฯลฯ
หากต้องการดูรายละเอียดของไฟล์ใน PowerShell คุณสามารถใช้ Get-ItemProperty cmdlet เพื่อดึงข้อมูลคุณสมบัติ เช่น ขนาดไฟล์ เวลาในการสร้าง และเวลาที่แก้ไขล่าสุด ตัวอย่างเช่น Get-ItemProperty -Path “C:\MyFolder\File.txt” จะแสดงรายการคุณสมบัติเหล่านี้สำหรับไฟล์ที่ระบุ หากต้องการอ่านเนื้อหาของไฟล์ ให้ใช้ Get-Content -Path “C:\MyFolder\File.txt” และสำหรับการดำเนินการจำนวนมากกับไฟล์หลายไฟล์ Get-ChildItem รวมกับ Get-ItemProperty สามารถให้ข้อมูลโดยละเอียดสำหรับแต่ละไฟล์ใน ไดเร็กทอรี
รับรายละเอียดของไฟล์โดยใช้ Get-ItemProperty
หากต้องการดูรายละเอียดไฟล์โดยใช้ PowerShell คุณสามารถใช้ Get-ItemProperty PowerShell cmdlet นี้จะดึงคุณสมบัติของรายการในเส้นทางที่ระบุ ซึ่งอาจรวมถึงไฟล์หรือโฟลเดอร์ ลองดูตัวอย่างพื้นฐาน:
Get-ItemProperty -Path "C:\MyFolder\MyFile.txt"คำสั่งนี้จะส่งออกคุณสมบัติต่างๆ เช่น LastWriteTime ของไฟล์ Length (ขนาดไฟล์) และ CreationTime และอื่นๆ อีกมากมาย
คุณสามารถดูผลลัพธ์ได้ในภาพหน้าจอด้านล่างหลังจากที่ฉันรันสคริปต์ PowerShell ด้านบน
หากต้องการดูรายละเอียดเพิ่มเติม คุณสามารถระบุคุณสมบัติเฉพาะที่คุณต้องการดึงข้อมูล เช่น ชื่อ ความยาว เวลาเขียนล่าสุด ฯลฯ:
Get-ItemProperty -Path "C:\MyFolder\MyFile.txt" -Name Length, LastWriteTimeสคริปต์นี้จะแสดงเฉพาะขนาดและเวลาที่แก้ไขล่าสุดของไฟล์ที่ระบุ
รับเนื้อหาไฟล์โดยใช้ Get-Content PowerShell cmdlet
หากคุณต้องการอ่านเนื้อหาของไฟล์โดยใช้ PowerShell คุณสามารถใช้ Get-Content cmdlet นี่คือคำสั่ง PowerShell
Get-Content -Path "C:\MyFolder\MyFile.txt"คำสั่งนี้จะแสดงเนื้อหาของ “MyFile.txt” ในคอนโซล หากคุณต้องการอ่านจำนวนบรรทัดจากไฟล์ คุณสามารถใช้พารามิเตอร์ -TotalCount:
Get-Content -Path "C:\MyFolder\MyFile.txt" -TotalCount 5สคริปต์นี้จะส่งออกห้าบรรทัดแรกของไฟล์
รับคุณสมบัติไฟล์ด้วย Get-Item
หากต้องการเจาะลึกมากขึ้นเกี่ยวกับแอตทริบิวต์ของไฟล์ คุณสามารถใช้ Get-Item PowerShell cmdlet cmdlet นี้ช่วยให้คุณสามารถดึงข้อมูลออบเจ็กต์ไฟล์และแอตทริบิวต์ เช่น ReadOnly, Hidden และ Archive นี่คือวิธีการใช้งาน:
$file = Get-Item -Path "C:\MyFolder\MyFile.txt"
$file.Attributesผลลัพธ์จะแสดงรายการคุณลักษณะทั้งหมดที่ตั้งไว้ในไฟล์ คุณยังสามารถกรองเพื่อตรวจสอบว่ามีการตั้งค่าแอตทริบิวต์เฉพาะหรือไม่:
$file = Get-Item -Path "C:\MyFolder\MyFile.txt"
$file.Attributes -match "ReadOnly"หากไฟล์เป็นแบบอ่านอย่างเดียว สคริปต์นี้จะส่งคืน True
ใช้ Get-ChildItem สำหรับหลายไฟล์
หากคุณต้องการดึงรายละเอียดสำหรับหลายไฟล์พร้อมกัน คุณสามารถใช้ Get-ChildItem PowerShell cmdlet cmdlet นี้สามารถใช้เพื่อแสดงรายการไฟล์ทั้งหมดในไดเรกทอรี จากนั้นไปป์เอาต์พุตไปที่ Get-ItemProperty เพื่อดูข้อมูลโดยละเอียด:
Get-ChildItem -Path "C:\MyFolder" -File | Get-ItemProperty | Select-Object Name, Length, LastWriteTime
คำสั่งนี้จะแสดงรายการชื่อ ขนาด และเวลาที่แก้ไขล่าสุดสำหรับไฟล์ทั้งหมดในไดเร็กทอรีที่ระบุ
คุณสามารถดูภาพหน้าจอด้านล่าง หลังจากที่ฉันรันสคริปต์ข้างต้น มันแสดงรายละเอียดของไฟล์ทั้งหมด
รับรายละเอียดไฟล์ในรูปแบบ CSV
นี่คือสคริปต์ฉบับสมบูรณ์ที่ดึงรายละเอียดเฉพาะสำหรับไฟล์ทั้งหมดในไดเร็กทอรีและส่งออกข้อมูลไปยังไฟล์ CSV:
$files = Get-ChildItem -Path "C:\MyFolder" -File
$fileDetails = foreach ($file in $files) {
$properties = Get-ItemProperty -Path $file.FullName
[PSCustomObject]@{
FileName = $properties.Name
Size = $properties.Length
LastModified = $properties.LastWriteTime
IsReadOnly = ($properties.Attributes -match "ReadOnly")
}
}
$fileDetails | Export-Csv -Path "C:\MyFolder\FileDetails.csv" -NoTypeInformationอันดับแรก สคริปต์นี้จะรวบรวมไฟล์ทั้งหมดในไดเร็กทอรีที่ระบุ จากนั้นวนซ้ำแต่ละไฟล์ รวบรวมชื่อ ขนาด เวลาที่แก้ไขล่าสุด และสถานะอ่านอย่างเดียว ข้อมูลที่รวบรวมจะถูกส่งออกเป็นไฟล์ CSV
บทสรุป
ในบทช่วยสอน PowerShell นี้ ฉันได้อธิบายวิธีรับรายละเอียดของไฟล์โดยใช้ Get-ItemProperty ใน PowerShell นอกจากนี้ ฉันได้อธิบายวิธีใช้ Get-ChildItem PowerShell cmdlet เพื่อรับรายละเอียดไฟล์ของหลายไฟล์

