PowerShell เรียงลำดับวัตถุ | ไวยากรณ์ พารามิเตอร์ และตัวอย่างของ PowerShell
ข้อมูลเบื้องต้นเกี่ยวกับ PowerShell Sort-Object
ในบทความนี้ เราจะพูดถึง PowerShell Sort-Object ที่แตกต่างกัน การเรียงลำดับเป็นงานที่สำคัญในภาษาการเขียนโปรแกรมใดๆ การเรียงลำดับจะใช้เสมอเมื่อเราต้องการผลลัพธ์ในรูปแบบที่แน่นอนเพื่อวิเคราะห์ข้อมูล ผมขอเล่าตัวอย่างหนึ่งให้คุณฟัง สมมติว่าคุณมีรายละเอียดของนักเรียนอยู่บ้าง และคุณต้องการดูผลลัพธ์ตามลำดับตัวอักษร
ตัวอย่าง:
$students =”Ranjan”,”Ajay”,”Vijay”,”Sujit”,”Ajeet”,”Akash”,”Vikash”
$studentsเอาต์พุต:
ผลลัพธ์นี้ไม่ได้จัดเรียงในลักษณะ
$students | Sort-Objectเอาต์พุต:
ผลลัพธ์ของการดำเนินการสามารถดูได้ในภาพด้านล่าง เริ่มแรกผลลัพธ์คือ ” Ranjan ”, ” Ajay ”, ” Vijay ”, ” Sujit ”, ” Ajeet ”, ” Akash ”, ” Vikash ” หลังจากการเรียงลำดับ เราได้ผลลัพธ์ Ajay Ajeet Akash Ranjan Sujit Vijay Vikash ที่นี่พวกเขาเรียงลำดับตามตัวอักษร เราสามารถเรียงลำดับตัวเลขและไดเร็กทอรีใดๆ ตามคุณสมบัติได้ เราจะพูดถึงตัวอย่างเพิ่มเติมและ ดูหน้าจอด้านล่างสำหรับตัวอย่างนี้
ไวยากรณ์และพารามิเตอร์ของ PowerShell Sort-Object
ไวยากรณ์ง่ายๆ คือ {Array ,directories} | Sort-Object เรากำลังใช้ “| ” ในฐานะตัวคั่นใน PowerShell คุณสามารถเขียนคำสั่งได้มากเท่าที่คุณต้องการด้วย “| ” แยกออกจากกัน Sort-Object มีพารามิเตอร์อื่นๆ มากมาย เช่น Properties (การกำหนดเกณฑ์คุณสมบัติการเรียงลำดับ เช่น ความยาว ขนาด และประเภท ฯลฯ)
Attribute for sorting | Sort-Object | command 1 | command 2 | command 3ไวยากรณ์ #1:
Sort-Object
[-Stable]
[-Descending(order in which we need output)]
[-Unique(use this to remove all duplicate and return unique values)]
[[-Property] <pass all the properties on which you want to do sorting like length,date,cpu uses etc>]
[-CaseSensitive(Sorting either case sensitive or case non sensitivity )]
[<CommonParameters>]ไวยากรณ์ #2:
Sort-Object
[-Descending(order in which we need output)]
[-Unique(use this to remove all duplicate and return unique values)]
-Top <Integer values>
[[-Property] <pass all the properties on which you want to do sorting like length,date,cpu uses etc>]
[-CaseSensitive(Sorting either case sensitive or case non sensitivity )]
[<CommonParameters>]ไวยากรณ์ #3:
Sort-Object
[-Descending(order in which we need output)]
[-Unique(use this to remove all duplicate and return unique values)]
-Bottom <Integer values>
[[-Property] <pass all the properties on which you want to do sorting like length,date,cpu uses etc>]
[-CaseSensitive(Sorting either case sensitive or case non sensitivity )]
[<CommonParameters>]พารามิเตอร์:
- -ด้านล่าง: มันกำหนดหมายเลขวัตถุที่จะได้รับจากจุดสิ้นสุดของอาร์เรย์ (วัตถุที่เรียงลำดับ)
- -CaseSensitive: เราใช้คำสั่งนี้หากเราต้องการองค์ประกอบที่เรียงลำดับเอาต์พุตโดยไม่คำนึงถึงตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่ นั่นหมายความว่าตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่จะถือว่าเหมือนกัน โปรดจำไว้เสมอว่าโดยค่าเริ่มต้นจะไม่คำนึงถึงขนาดตัวพิมพ์
- -เส้นทาง: มันแสดงถึงเส้นทางที่เราเรียกใช้คำสั่งการเรียงลำดับของเรา
- จากมากไปน้อย: จากมากไปน้อยหมายถึงลำดับการเรียงลำดับ ดังนั้น สมมติว่าคุณมีตัวเลขหลายตัวและต้องการเห็นผลลัพธ์ตามลำดับจากมากไปน้อย เราสามารถใช้คำสั่งจากมากไปน้อยพร้อมกับ Sort-Object และถ้าคุณไม่กำหนด Descending พร้อมกับคำสั่ง Sort-Object ก็จะถือว่าเป็น Ascending หากเราต้องการเรียงลำดับหลายสิ่งพร้อมกัน เราสามารถใช้ตารางแฮชได้
- -คุณสมบัติ: ในที่นี้คุณสมบัติหมายถึงคุณสมบัติขององค์ประกอบที่เราต้องการทำการเรียงลำดับ เราสามารถทำการเรียงลำดับคุณสมบัติเฉพาะของระบบไฟล์ได้ ตัวอย่างเช่น เราสามารถจัดเรียงไฟล์ตามขนาด วันที่ ฯลฯ หลายครั้งที่คุณกำลังค้นหาบางสิ่งที่คุณอาจต้องค้นหาไฟล์ล่าสุด ในสถานการณ์เช่นนี้ คุณสามารถทำการเรียงลำดับพร้อมกับคุณสมบัติความยาว . เราเห็นได้ในตัวอย่างที่ 5
- -เสถียร: ส่งคืนเอาต์พุตในลำดับเดียวกับที่ได้รับอินพุตเมื่อเงื่อนไขในการเรียงลำดับเท่ากัน
- -ด้านบน: กำหนดหมายเลขอ็อบเจ็กต์ที่ส่งคืนจากจุดเริ่มต้นของอาร์เรย์ที่เรียงลำดับ
- -ไม่ซ้ำกัน: ชื่อเพียงพอที่จะอธิบายความหมายของมันได้ และจะส่งกลับผลลัพธ์ที่ไม่ซ้ำเสมอหลังจากการเรียงลำดับวัตถุ
ตัวอย่างการใช้งาน PowerShell Remove-Item
ด้านล่างนี้เป็นตัวอย่างสำหรับการนำ PowerShell Remove-Item ไปใช้:
ตัวอย่าง #1
ในตัวอย่างด้านล่าง เราได้สร้างอาร์เรย์ของตัวเลข เราจะเห็นว่าตัวเลขไม่เรียงลำดับ แต่หลังจากการเรียงลำดับ เราจะเห็นว่าตัวเลขเล็กๆ อยู่ด้านบนและตัวเลขที่ใหญ่ที่สุดอยู่ด้านล่าง นี่คือลักษณะการทำงานเริ่มต้น เราสามารถระบุลำดับการจัดเรียงโดยข้ามจากมากไปหาน้อยหรือจากน้อยไปหามากในคุณสมบัติได้
$students =12,34,23,90,23,45,90,88,77,70
$studentsเอาต์พุต:
$students | Sort-Objectเอาต์พุต:
ตัวอย่าง #2
ที่นี่เรามีตัวเลขที่ไม่ได้เรียงลำดับแบบสุ่มพร้อมกับตัวเลขที่ซ้ำกัน ดังนั้นในคำสั่งนี้ เราจะลบตัวเลขที่ซ้ำกันทั้งหมดพร้อมกับการเรียงลำดับ ดูตัวอย่างด้านล่าง
$students =12,34,23,90,23,45,90,88,77,70
$studentsเอาต์พุต:
$students | Sort-Object -Uniqueเอาต์พุต:
ตัวอย่าง #3
ในตัวอย่างนี้ เรากำลังดึงไฟล์ย่อยทั้งหมดของไดเร็กทอรี ranjan1 และจัดเรียงไฟล์เหล่านั้น เราจะเห็นด้านล่างนี้คือผลลัพธ์ในรูปแบบตาราง ซึ่งส่งคืน Date of Last modified และ length เป็นต้น เมื่อคุณคุ้นเคยกับคำสั่งนี้แล้ว คุณจะชอบที่จะใช้คำสั่งนี้เพื่อค้นหาสิ่งใด ๆ ในระบบไฟล์ของคุณ
Get-ChildItem -Path ./ranjan1/ | Sort-Objectเอาต์พุต:
Get-ChildItem -Path ./ranjan/ | Sort-Objectเอาต์พุต:
ตัวอย่าง #4
ผมขอยกตัวอย่างที่เป็นประโยชน์อย่างหนึ่งให้กับคุณหลายครั้งเมื่อคุณใช้ระบบ (คอมพิวเตอร์) คุณอาจรู้สึกว่าระบบของคุณทำงานช้ามาก ดังนั้น เพื่อให้เข้าใจถึงต้นตอของระบบที่ช้า เราจึงสามารถตรวจสอบได้ว่ากระบวนการใดใช้ CPU และหน่วยความจำไปเท่าใด และเมื่อคุณรู้กระบวนการที่หนักที่สุดแล้ว คุณก็สามารถฆ่ากระบวนการที่ทำงานอยู่ซึ่งใช้ CPU มากกว่าได้ ในสองตัวอย่างด้านล่างนี้ เรากำลังจัดเรียงตามลำดับการใช้งาน CPU สูงสุด ในสองหน้าจอด้านล่าง เราจะดึงกระบวนการที่ใช้ CPU สูงสุด 5 และ 10 อันดับแรก คุณยังสามารถลองค้นหากระบวนการที่ทำงานเป็นเวลานานที่สุดหรือกระบวนการที่เริ่มต้นเมื่อเร็วๆ นี้ เป็นต้น
Get-Process | Sort-Object -Property WS | Select-Object -Last 5เอาต์พุต:
Get-Process | Sort-Object -Property WS | Select-Object -Last 10เอาต์พุต:
ตัวอย่าง #5
มาดูตัวอย่างที่สำคัญอีกตัวอย่างหนึ่ง ที่นี่เราจะจัดเรียงตามความยาวของระบบไฟล์ หลายครั้ง อาจเป็นไปได้ที่ไดเร็กทอรีของคุณมีไฟล์หลายพันไฟล์ แต่คุณต้องการดูเฉพาะไฟล์ที่มีขนาดใหญ่เท่านั้น ในตัวอย่างด้านล่าง เรากำลังเรียงลำดับแอตทริบิวต์ความยาวข้ามในคำสั่ง -Property คุณยังสามารถเรียงลำดับเงื่อนไขการเรียงลำดับหลายรายการรวมกันได้ โปรดดูหน้าจอด้านล่างเพื่อความเข้าใจที่ดีขึ้น
Get-ChildItem -Path ./Desktop/ -File | Sort-Object -Property Lengthเอาต์พุต:
บทสรุป - PowerShell Sort-Object
PowerShell Sort-Object ฉันหวังว่าบทช่วยสอนนี้จะดีพอที่จะอธิบายสั้น ๆ เกี่ยวกับ Sort-Object จากบทช่วยสอนนี้ เราได้ทราบวิธีที่ดีในการแสดงและค้นหาไฟล์ ช่วยให้เราสามารถเรียงลำดับอาร์เรย์และไดเร็กทอรีได้ทั้งคู่












