วิธีจัดเรียงที่อยู่ IP ใน PowerShell (พร้อมตัวอย่าง)
บ่อยครั้งคุณอาจต้องการเรียงลำดับรายการที่อยู่ IP ในไฟล์ข้อความโดยใช้ PowerShell
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ได้:
gc ip_list.txt | sort { $_ -replace '\d+', { $_.Value.PadLeft(3, '0') } }
ตัวอย่างนี้จะเรียงลำดับที่อยู่ IP ในไฟล์ชื่อ ip_list.txt
โปรดทราบว่าเราใช้ฟังก์ชัน PadLeft() เพื่อปัดตัวเลขแต่ละชุดในแต่ละที่อยู่ IP โดยมีศูนย์สามตัวทางด้านซ้าย
จากนั้นเราสามารถใช้ฟังก์ชัน sort เพื่อจัดเรียงที่อยู่ IP ตามค่าตัวเลข
หมายเหตุ: คำสั่ง gc เป็นเพียงนามแฝงสำหรับ Get-Content
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: วิธีจัดเรียงที่อยู่ IP ใน PowerShell
สมมติว่ามีไฟล์ข้อความชื่อ ip_list.txt ซึ่งมีที่อยู่ IP ต่างๆ
เราสามารถใช้คำสั่ง gc (หรือคุณจะพิมพ์ Get-Content) เพื่อดูเนื้อหาของไฟล์นี้:
ไฟล์นี้มีที่อยู่ IP ทั้งหมดเจ็ดแห่ง แต่ขณะนี้ไม่ได้เรียงลำดับแต่อย่างใด
เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อจัดเรียงที่อยู่ IP ในไฟล์:
gc ip_list.txt | sort { $_ -replace '\d+', { $_.Value.PadLeft(3, '0') } }ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
โปรดสังเกตว่าสิ่งนี้จะส่งกลับที่อยู่ IP ที่เรียงลำดับตามค่าตัวเลขจากน้อยไปหามาก
หากต้องการ คุณสามารถเพิ่มโอเปอเรเตอร์ -Descending ที่ท้ายคำสั่งเพื่อจัดเรียงที่อยู่ IP ตามค่าตัวเลขจากมากไปน้อย:
gc ip_list.txt | sort { $_ -replace '\d+', { $_.Value.PadLeft(3, '0') } } -Descendingภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
โปรดสังเกตว่าสิ่งนี้จะส่งกลับที่อยู่ IP ที่เรียงลำดับตามค่าตัวเลขจากมากไปน้อย


