10 คำสั่ง PowerShell อย่างง่ายที่ผู้ใช้ Windows ทุกคนควรรู้

PowerShell ช่วยให้คุณควบคุมทุกอย่างที่คุณต้องการผ่านพีซี Windows ของคุณและเรียนรู้ได้ง่าย ทิ้งเลย พร้อมรับคำสั่ง และใช้คำสั่ง Windows PowerShell เพื่อดำเนินงานด้านการดูแลระบบที่ซ้ำซ้อนเหล่านั้นโดยอัตโนมัติ 

การเรียนรู้ PowerShell จะสอนวิธีจัดการส่วนใหญ่ด้วย ลินุกซ์ งานการดูแลระบบภายใน bash shell PowerShell คล้ายกับสิ่งที่คุณพบมากที่สุด ลินุกซ์ ดิสทรอส

PowerShell คืออะไร?

Windows PowerShell เป็นอินเทอร์เฟซบรรทัดคำสั่งและภาษาสคริปต์ที่พัฒนาโดย Microsoft สำหรับผู้ดูแลระบบ แต่คุณไม่จำเป็นต้องเป็นผู้ดูแลระบบหรือโปรแกรมเมอร์เพื่อใช้งาน เพราะมันง่ายกว่าภาษาโปรแกรมอื่นๆ มาก คล้ายกับภาษาอังกฤษทั่วไป และทุกคนสามารถเข้าใจและใช้มันเพื่อดูแลคอมพิวเตอร์ของตนได้

คำสั่งที่ใช้ใน Windows PowerShell เรียกว่า “cmdlets” พวกเขาจะให้คุณเปิดใช้งานการกระทำเฉพาะหรือชุดการกระทำบนคอมพิวเตอร์ของคุณ การดำเนินการเหล่านี้อาจทำได้ง่าย เช่น การเข้าสู่ระบบเครือข่ายไร้สาย หรือซับซ้อนกว่านั้น เช่น การทำงานซ้ำๆ โดยอัตโนมัติ 

หากต้องการเปิด PowerShell ให้กดปุ่ม เริ่มต้น ปุ่มพิมพ์ “PowerShell” ลงในช่องค้นหา และเลือก windows PowerShell- คุณจะเปิดอินเทอร์เฟซบรรทัดคำสั่ง ซึ่งคุณพร้อมที่จะเริ่มพิมพ์คำสั่งแล้ว

ในบทความนี้ เราจะพูดถึงคำสั่ง PowerShell ที่มีประโยชน์และง่ายที่สุดมากกว่า 10 คำสั่ง

1. รับความช่วยเหลือ

Get-Help cmdlet เป็นจุดเริ่มต้นที่ดีเยี่ยมใน PowerShell โดยจะให้ภาพรวมของสิ่งที่คุณสามารถทำได้ และยังมีประโยชน์เมื่อคุณต้องการข้อมูลเพิ่มเติมเกี่ยวกับ cmdlet เฉพาะ 

เพียงเปิดหน้าต่าง PowerShell แล้วพิมพ์ ขอความช่วยเหลือ- นี่จะเป็นการเปิดภาพรวมที่ครอบคลุมซึ่งจะสอนคุณว่า PowerShell คืออะไร และคุณจะเข้าใจฟังก์ชันและโครงสร้างของ PowerShell คุณยังสามารถเข้าถึงเว็บเพื่อดูไฟล์วิธีใช้ขั้นสูงเพิ่มเติมได้โดยตรงผ่านอินเทอร์เฟซ คุณสามารถดาวน์โหลดไฟล์เหล่านี้เพื่อใช้ในภายหลังได้ 

แต่นั่นไม่ใช่จุดสิ้นสุดของคำสั่ง get-help พิมพ์: 

ขอความช่วยเหลือ * 

PowerShell จะแสดงรายการ cmdlets ทั้งหมดที่คุณสามารถใช้ในขณะนั้นได้ รายการอาจมีขนาดใหญ่ และคุณไม่จำเป็นต้องเรียนรู้ cmdlet ที่แสดงทั้งหมด แต่อย่าลังเลที่จะอ่านและสำรวจความเป็นไปได้ทั้งหมดที่มีให้กับคุณ

ประเภทงาน:

ขอความช่วยเหลือ

คุณไม่จำเป็นต้องมีวงเล็บ เพียงพิมพ์ชื่อคำสั่งที่คุณสนใจ จากนั้น cmdlet นี้จะให้ข้อมูลพื้นฐานเกี่ยวกับคำสั่งนั้นแก่คุณ หากต้องการคำอธิบายคำสั่งโดยละเอียดเพิ่มเติม ให้พิมพ์:

ขอความช่วยเหลือ -เต็ม

หากคุณต้องการตัวอย่างวิธีใช้คำสั่งบางประเภท:

ขอความช่วยเหลือ -ตัวอย่าง

2. รับคำสั่ง

คุณต้องการดึงข้อมูลเกี่ยวกับคำสั่งเฉพาะหรือชุดคำสั่งอย่างรวดเร็วหรือไม่? Get-Command cmdlet จะทำสิ่งนั้นเพื่อคุณ มีตัวเลือกมากมายภายใน Get-Command แต่คุณในฐานะผู้ใช้พื้นฐานของ PowerShell ไม่ต้องการตัวเลือกส่วนใหญ่ ต่อไปนี้เป็น cmdlet พื้นฐานบางส่วนที่จะเป็นประโยชน์ โดยเฉพาะอย่างยิ่งเมื่อใช้งานคำสั่งที่มีอยู่

หากคุณต้องการรายการ cmdlets เฉพาะที่เป็นประเภทเดียวกัน:

รับคำสั่ง -

ตัวอย่างเช่น วลีที่ซับซ้อนนี้จะสั่งให้คอมพิวเตอร์ของคุณแสดงรายการคำสั่งประเภท cmdlet ทั้งหมดที่มีอยู่ และเรียงลำดับตามตัวอักษรของคำนามในชื่อ:

รับคำสั่ง - พิมพ์ Cmdlet | เรียงลำดับวัตถุ - คำนามทรัพย์สิน | รูปแบบ-ตาราง-GroupBy Noun

นี่เป็นตัวอย่างที่ดีเยี่ยมของคำสั่งที่ซับซ้อนมากขึ้นซึ่งจะทำให้ PowerShell ดำเนินงานที่ซับซ้อนได้ เมื่อคุณเข้าใจไวยากรณ์แล้ว คุณจะเห็นว่าการใช้ PowerShell มักจะเป็นวิธีที่เร็วและง่ายที่สุดในการทำบางสิ่งบนคอมพิวเตอร์ของคุณ

หากคุณต้องการค้นหาคำสั่งเฉพาะตามชื่อ เพียงพิมพ์:

รับคำสั่ง - ชื่อ

หากคุณไม่ทราบชื่อที่แน่นอนของคำสั่งที่คุณกำลังมองหา แต่คุณทราบชื่อบางส่วน คุณสามารถพิมพ์: 

รับคำสั่ง - ชื่อ - ใช้ FuzzyMatching

cmdlet นี้จะมอบหมายให้คอมพิวเตอร์ของคุณค้นหาคำสั่งที่ใกล้เคียงกับสิ่งที่คุณพิมพ์ สนาม. คุณยังสามารถใช้ cmdlet นี้หากคุณมีแนวโน้มที่จะสะกดผิดและไม่ต้องการกังวลกับการแก้ไขตัวเองตลอดเวลา

3. รับเนื้อหา

หากคุณต้องการดูเนื้อหาของไฟล์ ให้ใช้ Get-Content cmdlet คุณจะต้องระบุตำแหน่งที่แน่นอนของไฟล์ดังกล่าวเพื่อให้คอมพิวเตอร์ของคุณสามารถค้นหาได้

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

4. รับกระบวนการ

Get-Process cmdlet จะให้ข้อมูลเกี่ยวกับกระบวนการที่กำลังทำงานอยู่ในคอมพิวเตอร์ของคุณ คุณสามารถดูการใช้งานหน่วยความจำ รอบ CPU รหัสกระบวนการ และคุณลักษณะอื่นๆ 

หากคุณเพิ่มชื่อของกระบวนการลงใน cmdlet นี้ คุณสามารถดูข้อมูลเกี่ยวกับกระบวนการเฉพาะได้ เช่น หากคุณต้องการข้อมูลเกี่ยวกับขั้นตอนการสมัคร Discord เพียงพิมพ์ รับความไม่ลงรอยกันของกระบวนการ.

คุณสามารถเริ่มหรือหยุดกระบวนการผ่าน PowerShell ได้โดยเพียงแค่แทนที่คำนำหน้า "รับ" ของไวยากรณ์ หากต้องการเริ่มต้นกระบวนการ ให้พิมพ์:

เริ่มกระบวนการ  

หากต้องการหยุดกระบวนการ ให้พิมพ์:

หยุดกระบวนการ

5. รับบริการ

ในฐานะผู้ดูแลระบบ คุณอาจพบว่า Get-Service cmdlet มีประโยชน์มาก cmdlet แบบง่ายนี้จะแสดงบริการทั้งหมดที่ทำงานอยู่บนระบบของคุณและช่วยให้คุณสามารถควบคุมได้ ซึ่งหมายความว่าคุณสามารถดูโปรแกรมทั้งหมดที่ทำให้คอมพิวเตอร์ของคุณทำงานได้ 

ตอนนี้คุณสามารถใช้ชื่อบริการเพื่อควบคุมได้ ใช้คำสั่งเช่น รีสตาร์ทบริการ เพื่อแกะอันที่แช่แข็งออก หยุดบริการ เพื่อหยุดพวกมันโดยสิ้นเชิงและ เริ่มบริการ เพื่อเริ่มต้นใหม่อีกครั้ง

6. รับไอเทม

หากคุณต้องการรายการใดรายการหนึ่ง การค้นหาผ่าน PowerShell อาจเร็วกว่าการใช้แถบค้นหาที่รวมอยู่ในระบบปฏิบัติการของคุณ จะสะดวกเป็นพิเศษหากคุณทราบตำแหน่งของไฟล์ที่คุณต้องการ เพียงใช้คำสั่งในลักษณะนี้:

รับรายการ C:

นี่จะแสดงรายการไฟล์ในฮาร์ดไดรฟ์ “C:” คุณสามารถเจาะจงยิ่งขึ้นและค้นหาในไดเร็กทอรีทั้งหมดภายใต้โปรไฟล์ของผู้ใช้หรือเจาะลึกเข้าไปในไดเร็กทอรี "เอกสาร" หรือ "ดาวน์โหลด" เมื่อต้องการทำเช่นนี้ ให้พิมพ์:

รับ Tem C: ผู้ใช้ -

หากคุณต้องการดึงข้อมูลรายการลูกจากคอนเทนเนอร์ เช่น ไดเร็กทอรีระบบ คุณสามารถใช้ cmdlet ได้ Get-ChildItem- คำสั่งนี้จะแสดงไฟล์และไดเร็กทอรีทั้งหมดภายในคอนเทนเนอร์นั้น เช่นเดียวกับ Get-Item cmdlet คุณจะต้องระบุเส้นทางของคอนเทนเนอร์

หากต้องการลบรายการ คุณสามารถแทนที่ส่วนต่อท้าย "รับ" ด้วย "ลบ" ซึ่งจะช่วยให้คุณสามารถลบทุกอย่างได้ตั้งแต่ไฟล์และโฟลเดอร์ไปจนถึงรีจิสตรีคีย์และฟังก์ชัน พิมพ์ ลบรายการ- คุณสามารถอธิบายรายละเอียด cmdlet นี้และลบเฉพาะไฟล์ที่ซ่อนและ "อ่านอย่างเดียว" หรือลบรายการออกจากโฟลเดอร์และโฟลเดอร์ย่อยที่ระบุ

7. แปลงเป็น Html

คำสั่งนี้จะช่วยคุณแปลงวัตถุ .NET ให้เป็นไฟล์ HTML ที่สามารถแสดงในเว็บเบราว์เซอร์ได้ นี่คือ cmdlet เอาต์พุตซึ่งหมายความว่าใช้งานได้ดีกับ cmdlet อื่นๆ เพียงเพิ่มไปที่ส่วนท้ายของ cmdlets อื่นๆ และรวมเส้นทางของไฟล์เฉพาะไว้ด้วย 

ตัวอย่างเช่น หากคุณต้องการสร้างไฟล์ HTML ที่แสดงชื่อ พาธ และบริษัทของกระบวนการปัจจุบันทั้งหมดของคอมพิวเตอร์ในระบบ ให้พิมพ์: 

รับกระบวนการ | ConvertTo-Html -ชื่อทรัพย์สิน, เส้นทาง, บริษัท -หัวข้อ “ข้อมูลกระบวนการ” | ชื่อไฟล์ออก.htm

แทนที่ filename.htm ด้วยชื่อไฟล์ที่คุณต้องการ

หากต้องการเปิดไฟล์ที่สร้างขึ้นให้ใช้ไฟล์ เรียกใช้รายการ cmdlet บวก - เนื้อหาควรมีลักษณะคล้ายกับภาพด้านล่าง

8. กำหนดนโยบายการดำเนินการ

หากคุณต้องการเรียกใช้สคริปต์ PowerShell ภายใน คุณจะต้องเปลี่ยนนโยบายการดำเนินการของ PowerShell เอง ในคอมพิวเตอร์ Windows นโยบายการดำเนินการจะถูกจำกัดอยู่เสมอ และคุณจะต้องเปลี่ยนเป็น RemoteSigned หรือ Unrestricted ในคอมพิวเตอร์ที่ไม่ใช่ Windows เช่น Linux หรือ Mac โดยทั่วไปจะตั้งค่าเป็น Unrestricted และไม่สามารถเปลี่ยนแปลงได้ 

หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับนโยบายการดำเนินการ PowerShell เพียงพิมพ์:

ช่วยกำหนด ExecutionPolicy

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

หากต้องการตั้งค่านโยบายเป็น RemoteSigned เพียงพิมพ์:

ตั้งค่านโยบายการดำเนินการ RemoteSigned

หากต้องการตั้งค่าเป็นประเภทไม่จำกัด:

กำหนดนโยบายการดำเนินการไม่จำกัด

หากต้องการตรวจสอบการตั้งค่าปัจจุบันสำหรับนโยบายการดำเนินการ ให้พิมพ์: 

รับ-ExecutionPolicy

เนื่องจากนโยบายการดำเนินการเป็นส่วนหนึ่งของกลยุทธ์ความปลอดภัยของ PowerShell จึงจะขอให้คุณยืนยันการเปลี่ยนแปลง พิมพ์ Y เฉพาะในกรณีที่คุณแน่ใจว่าต้องการดำเนินการต่อ

9. เลือก-วัตถุ

คำสั่งนี้ใช้เพื่อเลือกวัตถุและชุดของวัตถุ วัตถุเฉพาะ และวัตถุในตำแหน่งเฉพาะในอาร์เรย์ มีพารามิเตอร์ต่างๆ ที่คุณสามารถใช้เพื่อระบุออบเจ็กต์ที่คุณต้องการเลือก ซึ่งรวมถึงคุณสมบัติ ค่าตัวเลข และออบเจ็กต์อินพุตเฉพาะ 

ในการเลือกออบเจ็กต์ตามคุณสมบัติคุณสมบัติ คุณจะต้องระบุคุณสมบัติเช่นชื่อ ID หรือ CPU คุณสามารถจัดกลุ่มแอตทริบิวต์ได้ แต่คุณต้องคั่นด้วยเครื่องหมายจุลภาคเมื่อพิมพ์คำสั่ง หากต้องการดู Select-Object cmdlet ในประเภทการดำเนินการ:

รับกระบวนการ | เลือก-วัตถุ -Property ProcessName, Id, CPU

PowerShell จะแสดงรายการกระบวนการปัจจุบันและคุณลักษณะทั้งหมดดังที่แสดงด้านล่าง

ตอนนี้คุณสามารถใช้คำสั่ง -EpandProperty เพื่อรับข้อมูลโดยละเอียดเกี่ยวกับแอ็ตทริบิวต์เฉพาะ หากคุณต้องการรายละเอียดเกี่ยวกับคุณสมบัติ Modules ของประเภทแอตทริบิวต์ ProcessName:

รับกระบวนการ Chrome | เลือก-วัตถุ -Property ProcessName -ExpandProperty Modules | รูปแบบรายการ

เอาต์พุต "Format-list" ของคำสั่งจะทำให้ผลลัพธ์ถูกจัดรูปแบบและอ่านได้

10. ส่งออก-CSV

บางครั้งคำสั่ง PowerShell ส่งผลให้เกิดรายการยาว ดังที่เราเห็นใน Get-Command cmdlet รายการยาวๆ และข้อมูลมากมายอ่านยาก และคุณจะต้องการรายการที่มีระเบียบมากขึ้น ในการดำเนินการนี้ ให้ส่งออกข้อมูลทั้งหมดเป็นไฟล์ CSV คุณสามารถทำได้โดยตรงใน PowerShell โดยใช้ฟังก์ชันส่งออก-CSV

ตัวอย่างเช่น เราเห็นว่า cmdlet Get-Command ให้รายการ cmdlet ที่มีอยู่ทั้งหมดที่เราสามารถใช้ได้ใน PowerShell ในขณะนั้น คุณสามารถรวม Get-Command และ Export-CSV เข้าด้วยกันเพื่อสร้างรายการโดยละเอียดด้วยค่าที่คั่นด้วยเครื่องหมายจุลภาค เช่น ชื่อ แหล่งที่มา และเวอร์ชันที่แอปอย่าง Excel จำได้ 

เมื่อต้องการทำเช่นนี้ ให้พิมพ์คำสั่งต่อไปนี้ลงในพร้อมท์คำสั่ง PowerShell แต่โปรดทราบว่าคุณสามารถตั้งค่าเส้นทางใดก็ได้ที่คุณต้องการ และคุณสามารถตั้งชื่อไฟล์ของคุณแตกต่างออกไปได้:

รับคำสั่ง | เลือกชื่อ แหล่งที่มา เวอร์ชัน | ส่งออก-csv D:AllCommands.csv

ตอนนี้คุณสามารถเปิดรายการใน Excel ได้ และคุณควรเห็นสิ่งที่คล้ายกับรูปภาพต่อไปนี้

ผู้ดูแลระบบ