พาวเวอร์เชลล์ มอบการควบคุมทั้งหมดที่คุณต้องการผ่านพีซี 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 ทั้งหมดที่คุณสามารถใช้ในขณะนั้น รายการอาจมีขนาดใหญ่ และคุณไม่จำเป็นต้องเรียนรู้ cmdlets ที่แสดงทั้งหมด แต่อย่าลังเลที่จะอ่านและสำรวจความเป็นไปได้ทั้งหมดที่มีให้กับคุณ.
ประเภท:
รับความช่วยเหลือ <ชื่อคำสั่ง>
คุณไม่จำเป็นต้องมีวงเล็บ เพียงพิมพ์ชื่อของคำสั่งที่คุณสนใจ แล้ว cmdlet นี้จะให้ข้อมูลพื้นฐานเกี่ยวกับคำสั่งนั้นแก่คุณ หากต้องการคำอธิบายคำสั่งโดยละเอียดเพิ่มเติม ให้พิมพ์:
รับความช่วยเหลือ <ชื่อคำสั่ง>-เต็ม
หากคุณต้องการตัวอย่างวิธีใช้คำสั่งบางประเภท:
รับความช่วยเหลือ <ชื่อคำสั่ง>-ตัวอย่าง
2. รับคำสั่ง
คุณต้องการดึงข้อมูลเกี่ยวกับคำสั่งเฉพาะหรือชุดคำสั่งอย่างรวดเร็วหรือไม่? Get-Command cmdlet จะทำสิ่งนั้นเพื่อคุณ มีตัวเลือกมากมายภายใน Get-Command แต่คุณในฐานะผู้ใช้พื้นฐานของ PowerShell ไม่ต้องการตัวเลือกส่วนใหญ่ ต่อไปนี้คือ cmdlet พื้นฐานบางส่วนที่จะเป็นประโยชน์ โดยเฉพาะอย่างยิ่งเมื่อใช้งานคำสั่งที่มีอยู่
หากคุณต้องการรายการ cmdlets เฉพาะที่เป็นประเภทเดียวกัน:
รับคำสั่ง -
ตัวอย่างเช่น วลีที่ซับซ้อนนี้จะสั่งให้คอมพิวเตอร์ของคุณแสดงรายการคำสั่งประเภท cmdlet ทั้งหมดที่มีอยู่ และเรียงลำดับตามตัวอักษรของคำนามในชื่อ:
รับคำสั่ง -พิมพ์ Cmdlet | เรียงลำดับวัตถุ - คำนามทรัพย์สิน | รูปแบบ-ตาราง -GroupBy Noun
นี่เป็นตัวอย่างที่ดีเยี่ยมของคำสั่งที่ซับซ้อนมากขึ้นซึ่งจะทำให้ PowerShell ดำเนินงานที่ซับซ้อน เมื่อคุณเข้าใจไวยากรณ์แล้ว คุณจะเห็นว่าการใช้ PowerShell มักจะเป็นวิธีที่เร็วและง่ายที่สุดในการทำบางสิ่งบนคอมพิวเตอร์ของคุณ
หากคุณต้องการค้นหาคำสั่งเฉพาะตามชื่อ เพียงพิมพ์:
รับคำสั่ง - ชื่อ <ชื่อของคำสั่ง
หากคุณไม่ทราบชื่อที่แน่นอนของคำสั่งที่คุณกำลังมองหา แต่คุณทราบชื่อบางส่วน คุณสามารถพิมพ์:
รับคำสั่ง - ชื่อ <ชื่อของคำสั่ง>-UseFuzzyMatching
cmdlet นี้จะมอบหมายให้คอมพิวเตอร์ของคุณค้นหาคำสั่งที่ใกล้เคียงกับสิ่งที่คุณพิมพ์ลงในฟิลด์
3. รับเนื้อหา
หากคุณต้องการดูเนื้อหาของไฟล์ ให้ใช้ Get-Content cmdlet คุณจะต้องระบุตำแหน่งที่แน่นอนของไฟล์ดังกล่าวเพื่อให้คอมพิวเตอร์ของคุณสามารถค้นหาได้.
ในตัวอย่างด้านบน คุณสามารถดูเนื้อหาของไฟล์ข้อความทดสอบที่สร้างขึ้นเพื่อจุดประสงค์นี้ นี่เป็นคำสั่งที่ตรงไปตรงมา แต่ถ้าคุณรู้ว่ามันทำอะไร คุณสามารถรวมมันเข้ากับคำสั่งอื่นๆ และทำงานที่ทรงพลังจริงๆ ผ่าน Windows PowerShell ได้
4. รับกระบวนการ
Get-Process cmdlet จะให้ข้อมูลเกี่ยวกับกระบวนการที่กำลังทำงานอยู่ในคอมพิวเตอร์ของคุณ คุณสามารถดูการใช้งานหน่วยความจำ รอบ CPU รหัสกระบวนการ และคุณลักษณะอื่นๆ
หากคุณเพิ่มชื่อของกระบวนการใน cmdlet นี้ คุณสามารถดูข้อมูลเกี่ยวกับกระบวนการเฉพาะได้ ตัวอย่างเช่น หากคุณต้องการข้อมูลเกี่ยวกับขั้นตอนการสมัคร Discord เพียงพิมพ์Get-Process Discord
คุณสามารถเริ่มหรือหยุดกระบวนการผ่าน PowerShell ได้โดยเพียงแค่แทนที่คำนำหน้า "รับ" ของไวยากรณ์ หากต้องการเริ่มกระบวนการ ให้พิมพ์:
เริ่มกระบวนการ <ชื่อกระบวนการหรือ ID>
หากต้องการหยุดกระบวนการ ให้พิมพ์:
หยุดกระบวนการ <ชื่อกระบวนการหรือ ID>
5. รับบริการ
ในฐานะผู้ดูแลระบบ คุณอาจพบว่า Get-Service cmdlet มีประโยชน์มาก cmdlet แบบง่ายนี้จะแสดงบริการทั้งหมดที่ทำงานอยู่บนระบบของคุณและช่วยให้คุณสามารถควบคุมได้ ซึ่งหมายความว่าคุณสามารถดูโปรแกรมทั้งหมดที่ทำให้คอมพิวเตอร์ของคุณทำงานได้
ตอนนี้คุณสามารถใช้ชื่อบริการเพื่อควบคุมได้ ใช้คำสั่งต่างๆ เช่น Restart-Service
6. รับรายการ
หากคุณต้องการรายการใดรายการหนึ่ง การค้นหาผ่าน PowerShell อาจเร็วกว่าการใช้แถบค้นหาที่รวมอยู่ในระบบปฏิบัติการของคุณ จะสะดวกเป็นพิเศษหากคุณทราบตำแหน่งของไฟล์ที่คุณต้องการ เพียงใช้คำสั่งในลักษณะนี้:
รับรายการ C:
การดำเนินการนี้จะแสดงรายการไฟล์ในฮาร์ดไดรฟ์ “C:” คุณสามารถระบุให้เจาะจงยิ่งขึ้นและค้นหาในไดเร็กทอรีทั้งหมดภายใต้โปรไฟล์ของผู้ใช้หรือเจาะลึกเข้าไปในไดเร็กทอรี "เอกสาร" หรือ "ดาวน์โหลด" เมื่อต้องการทำเช่นนี้ ให้พิมพ์:
รับ Tem C:\users\<ชื่อผู้ใช้>\* .
หากคุณต้องการดึงข้อมูลรายการลูกจากคอนเทนเนอร์ เช่น ไดเร็กทอรีระบบ คุณสามารถใช้ cmdlet Get-ChildItem คำสั่งนี้จะแสดงไฟล์และไดเร็กทอรีทั้งหมดภายในคอนเทนเนอร์นั้น เช่นเดียวกับ Get-Item cmdlet คุณจะต้องระบุเส้นทางของคอนเทนเนอร์
หากต้องการลบรายการ คุณสามารถแทนที่ส่วนต่อท้าย "รับ" ด้วย "ลบ" ซึ่งจะช่วยให้คุณสามารถลบทุกอย่างได้ตั้งแต่ไฟล์และโฟลเดอร์ไปจนถึงรีจิสตรีคีย์และฟังก์ชัน พิมพ์ ลบรายการ <สถานที่\ ชื่อ> คุณสามารถอธิบายรายละเอียด cmdlet นี้และลบเฉพาะไฟล์ที่ซ่อนและ "อ่านอย่างเดียว" หรือลบรายการออกจากโฟลเดอร์และโฟลเดอร์ย่อยที่ระบุ
7. แปลงเป็น Html
คำสั่งนี้จะช่วยคุณแปลงวัตถุ .NET ให้เป็นไฟล์ HTML ที่สามารถแสดงในเว็บเบราว์เซอร์ได้ นี่คือ cmdlet เอาต์พุตซึ่งหมายความว่าใช้งานได้ดีกับ cmdlet อื่นๆ เพียงเพิ่มไปที่ส่วนท้ายของ cmdlets อื่นๆ และรวมเส้นทางของไฟล์เฉพาะไว้ด้วย
ตัวอย่างเช่น หากคุณต้องการสร้างไฟล์ HTML ที่แสดงชื่อ เส้นทาง และบริษัทของกระบวนการปัจจุบันทั้งหมดของคอมพิวเตอร์ในระบบ ให้พิมพ์:
รับกระบวนการ | ConvertTo-Html -ชื่อทรัพย์สิน, เส้นทาง, บริษัท -หัวข้อ “ข้อมูลกระบวนการ” | filename.htm ออกไฟล์
แทนที่ filename.htm ด้วยชื่อไฟล์ที่คุณต้องการ
หากต้องการเปิดไฟล์ที่สร้างขึ้น ให้ใช้ Invoke-Item cmdlet plus
8. กำหนดนโยบายการดำเนินการ
หากคุณต้องการเรียกใช้สคริปต์ PowerShell ในเครื่อง คุณจะต้องเปลี่ยนนโยบายการดำเนินการของ PowerShell เอง ในคอมพิวเตอร์ Windows นโยบายการดำเนินการจะถูกจำกัดอยู่เสมอ และคุณจะต้องเปลี่ยนเป็น RemoteSigned หรือ Unrestricted ในคอมพิวเตอร์ที่ไม่ใช่ Windows เช่น Linux หรือ Mac โดยทั่วไปจะตั้งค่าเป็นไม่จำกัด และไม่สามารถเปลี่ยนแปลงได้
หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับนโยบายการดำเนินการของ PowerShell เพียงพิมพ์:
ช่วยตั้งค่า-ExecutionPolicy
PowerShell จะแสดงไฟล์วิธีใช้เกี่ยวกับนโยบายการดำเนินการบนคอมพิวเตอร์ของคุณ หรือแจ้งให้คุณทราบหากไม่มี แต่ยังให้ลิงก์ที่คุณสามารถติดตามและอ่านเกี่ยวกับเรื่องนี้ทางออนไลน์ได้ด้วย.
หากต้องการตั้งค่านโยบายเป็น RemoteSigned เพียงพิมพ์:
ตั้งค่านโยบายการดำเนินการ RemoteSigned
วิธีตั้งค่าเป็นประเภทไม่จำกัด:
กำหนดนโยบายการดำเนินการไม่ถูกจำกัด
หากต้องการตรวจสอบการตั้งค่าปัจจุบันสำหรับนโยบายการดำเนินการ ให้พิมพ์:
รับนโยบายการดำเนินการ
เนื่องจากนโยบายการดำเนินการเป็นส่วนหนึ่งของกลยุทธ์ความปลอดภัยของ PowerShell จึงจะขอให้คุณยืนยันการเปลี่ยนแปลง พิมพ์ Y เฉพาะในกรณีที่คุณแน่ใจว่าต้องการดำเนินการต่อ
9. เลือก-วัตถุ
คำสั่งนี้ใช้เพื่อเลือกวัตถุและชุดของวัตถุ วัตถุเฉพาะ และวัตถุในตำแหน่งเฉพาะในอาร์เรย์ มีพารามิเตอร์ต่างๆ ที่คุณสามารถใช้เพื่อระบุออบเจ็กต์ที่คุณต้องการเลือก ซึ่งรวมถึงคุณสมบัติ ค่าตัวเลข และออบเจ็กต์อินพุตเฉพาะ
ในการเลือกออบเจ็กต์ตามคุณลักษณะของคุณสมบัติ คุณจะต้องระบุคุณลักษณะ เช่น ชื่อ ID หรือ CPU คุณสามารถจัดกลุ่มแอตทริบิวต์ได้ แต่คุณต้องคั่นด้วยเครื่องหมายจุลภาคเมื่อพิมพ์คำสั่ง หากต้องการดู Select-Object cmdlet ในประเภทการดำเนินการ:
รับกระบวนการ | เลือก-วัตถุ -ชื่อกระบวนการคุณสมบัติ, รหัส, 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 ได้ และคุณควรเห็นสิ่งที่คล้ายกับรูปภาพต่อไปนี้
.