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

PowerShell tail- รับบรรทัดสุดท้ายของไฟล์


บ่อยครั้งที่ผู้ดูแลระบบมีหน้าที่ตรวจสอบไฟล์บันทึก เช่น ไฟล์บันทึก Windows, บันทึก IIS, บันทึกข้อผิดพลาด, ไฟล์บันทึกไฟร์วอลล์ และรับ x บรรทัดสุดท้ายจากไฟล์ ในพารามิเตอร์ส่วนท้ายของ PowerShell ของ Get-Content cmdlet คือคำสั่งเทียบเท่า Unix tail ที่ใช้ในการตรวจสอบไฟล์และรับบรรทัดสุดท้ายของไฟล์

การใช้ PowerShell ผู้ดูแลระบบสามารถรับส่วนท้ายของไฟล์ได้อย่างง่ายดายโดยใช้ Get-Content cmdlet ซึ่งมีพารามิเตอร์ส่วนท้าย

ในพารามิเตอร์ส่วนท้ายของ PowerShell ระบุจำนวนบรรทัดจากจุดสิ้นสุดของไฟล์ คุณยังสามารถใช้นามแฝงส่วนท้าย Last ได้ด้วย

มาทำความเข้าใจโดยใช้ตัวอย่างส่วนท้ายของการรับเนื้อหาเพื่ออ่านส่วนท้ายของไฟล์ ไฟล์อาจเป็นไฟล์บันทึก iis บันทึกเหตุการณ์ Windows บันทึกไฟร์วอลล์ หรือไฟล์อื่นๆ

เคล็ดลับเด็ด: วิธีรับใบรับรองโดยใช้ PowerShell!

การใช้ส่วนท้ายของ PowerShell ของบันทึกเหตุการณ์ของ Window

หากต้องการรับบันทึกเหตุการณ์ Windows 10 บรรทัดสุดท้าย ให้ใช้พารามิเตอร์ส่วนท้ายของ Get-Content ด้านล่าง

Get-Content "C:\PowerShell\EventLog_Setup.txt"  -tail 3

เอาต์พุตคำสั่ง tail get-content ด้านบนแสดง 3 บรรทัดสุดท้ายของไฟล์

ส่วนท้ายของ PowerShell - แสดงบรรทัดสุดท้ายของไฟล์

หากต้องการรับบรรทัดสุดท้ายของไฟล์ ให้ใช้พารามิเตอร์ tail ที่มีค่า 1 ที่นี่ -tail 1 แสดงบรรทัดล่างสุดของไฟล์

Get-Content "C:\PowerShell\EventLog_Setup.txt"  -tail 1

เคล็ดลับเด็ด: คุณรู้หรือไม่ว่าเทียบเท่ากับคำสั่ง cat ใน Windows!

รับส่วนท้ายของไฟล์ขนาดใหญ่และส่งออกเป็น csv

บ่อยครั้งที่ผู้ดูแลระบบจำเป็นต้องแยกสองสามบรรทัดออกจากไฟล์บันทึกขนาดใหญ่เพื่อวิเคราะห์ข้อมูลบันทึก

หากต้องการรับส่วนท้ายของไฟล์ขนาดใหญ่ 50 บรรทัดสุดท้ายและส่งออกเป็นไฟล์ csv ให้ใช้คำสั่งด้านล่าง

Get-Content "C:\PowerShell\EventLog_Setup.txt"  -tail 50 | Out-File -FilePath "C:\PowerShell\output.csv"

ในคำสั่งข้างต้น พารามิเตอร์ PowerShell Get-Content cmdlet -tail รับโค้ด 50 บรรทัดสุดท้าย ด้วยการใช้ตัวดำเนินการไปป์ มันส่งผ่านบรรทัดที่แตกออกมาไปยัง Out-File เพื่อส่งออกเป็นไฟล์ csv

เคล็ดลับเด็ด: ใช้ PowerShell เพื่อรับไฟล์บรรทัดแรก!

การใช้พารามิเตอร์ wait เพื่อแสดงบรรทัดใหม่

การใช้พารามิเตอร์ tail อีกประการหนึ่งที่ได้รับความนิยมคือการเรียกบรรทัดสุดท้ายจากไฟล์ การใช้พารามิเตอร์ Get-Content cmdlet -wait จะทำให้ไฟล์เปิดอยู่หลังจากบรรทัดที่มีอยู่ทั้งหมดส่งออกไปยังคอนโซลและดูบรรทัดใหม่ทุกๆ หนึ่งวินาที

Get-Content "C:\PowerShell\iislog.txt" -wait

คุณสามารถหยุดการรอคอยได้โดยใช้ Ctrl + C

เคล็ดลับเด็ด: เรียนรู้วิธีทำให้ผู้ใช้โฆษณาใช้ชื่อผู้ใช้หลัก!

บทสรุป

ในบล็อกโพสต์ด้านบน ฉันได้อธิบายวิธี รับบรรทัดสุดท้ายของไฟล์ โดยใช้พารามิเตอร์ Get-Content tail ในพารามิเตอร์ส่วนท้ายของ PowerShell มีประโยชน์มากในการรับจำนวนบรรทัดที่ระบุจากไฟล์

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

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