PowerShell: วิธีนับการเกิดขึ้นของแต่ละองค์ประกอบในอาร์เรย์
บ่อยครั้งคุณอาจต้องการนับจำนวนครั้งของแต่ละองค์ประกอบในอาร์เรย์ใน PowerShell
คุณสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อดำเนินการดังกล่าว:
$my_array | Groupตัวอย่างนี้จะส่งคืนจำนวนครั้งของค่าที่ไม่ซ้ำกันแต่ละค่าในอาร์เรย์ชื่อ $my_array
คุณยังสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อส่งคืนจำนวนครั้งที่เกิดขึ้น โดยจัดเรียงจากมากไปน้อยตามจำนวน:
$my_array | Group | Sort Count -Descending | Select Name, Countตัวอย่างต่อไปนี้แสดงวิธีการใช้แต่ละวิธีในทางปฏิบัติ
ตัวอย่าง: วิธีนับการเกิดขึ้นของแต่ละองค์ประกอบในอาร์เรย์ใน PowerShell
สมมติว่าเราสร้างอาร์เรย์ต่อไปนี้ใน PowerShell ชื่อ $my_array:
$my_array = @(1, 1, 1, 4, 5, 5, 8, 8, 8, 9, 12)เราสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อนับจำนวนครั้งของค่าที่ไม่ซ้ำกันแต่ละค่าในอาร์เรย์:
$my_array | Groupภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
โปรดสังเกตว่าสิ่งนี้ส่งคืนวัตถุที่มีคุณสมบัติดังต่อไปนี้:
- นับ: จำนวนครั้งขององค์ประกอบ
- ชื่อ: ชื่อองค์ประกอบ
- กลุ่ม: กลุ่มที่มีองค์ประกอบแต่ละรายการเกิดขึ้น
นอกจากนี้เรายังสามารถใช้ไวยากรณ์ต่อไปนี้เพื่อส่งคืนจำนวนครั้งของแต่ละองค์ประกอบโดยเรียงลำดับจากมากไปน้อย:
$my_array | Group | Sort Count -Descending | Select Name, Countภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
จากผลลัพธ์เราจะเห็นได้ว่า:
- ค่า 8 เกิดขึ้น 3 ครั้งในอาร์เรย์
- ค่า 1 เกิดขึ้น 3 ครั้งในอาร์เรย์
- ค่า 5 เกิดขึ้น 2 ครั้งในอาร์เรย์
และอื่นๆ
คุณสามารถละพารามิเตอร์ -จากมากไปน้อย ออกไปได้ หากคุณต้องการแสดงจำนวนครั้งตามลำดับจากน้อยไปมาก

