Windows PowerShell ISE | คู่มือฉบับสมบูรณ์เกี่ยวกับ Windows PowerShell ISE
บทนำสู่ Windows PowerShell ISE
Windows PowerShell ISE คือสภาพแวดล้อมการเขียนสคริปต์สำหรับการพัฒนาและเรียกใช้ PowerShell cmdlets และสคริปต์ เป็นอินเทอร์เฟซที่สามารถเรียกใช้ ดีบัก และทดสอบสคริปต์หรือ cmdlets ได้ มีประโยชน์มากที่จะใช้เนื่องจากมีสีที่แตกต่างกันสำหรับคำหลัก ซึ่งทำให้ผู้ใช้แยกความแตกต่างระหว่างคำหลักและตัวแปร นอกจากนี้ยังมีฟีเจอร์ IntelliSense เช่นเดียวกับที่มีอยู่ใน Visual Studio ที่แนะนำวัตถุ/ฟังก์ชันที่เกี่ยวข้องที่เกี่ยวข้องกับวัตถุ เวอร์ชันแรกเปิดตัวพร้อมกับ Windows PowerShell เวอร์ชัน 2 และออกแบบใหม่ในเวอร์ชัน 3 ขณะนี้ ISE ได้รับการสนับสนุนใน Windows PowerShell เวอร์ชันทั้งหมดจนถึง 5.1 PowerShell ISE สามารถเริ่มต้นได้โดยการเลือกการเริ่มต้นและ Windows PowerShell ISE หรือสามารถเปิดได้โดยการพิมพ์ powershell_ise.exe ในกล่องเรียกใช้หรือพร้อมท์คำสั่ง
ข้อกำหนด ISE ของ Windows PowerShell
เริ่มต้นจาก Windows XP PowerShell สามารถทำงานบน windows ทุกรุ่น ไม่รองรับการติดตั้งเซิร์ฟเวอร์คอร์ จำเป็นต้องมีการติดตั้ง .Net framework 3.5 ขึ้นไป หากไม่ได้ติดตั้ง .Net framework จะถูกติดตั้งโดยอัตโนมัติระหว่างการติดตั้ง ISE โดยผู้จัดการเซิร์ฟเวอร์
การวิเคราะห์การออกแบบ PowerShell ISE
ต่อไปนี้เป็นส่วนประกอบ:
- แถบเมนู
- แท็บ
- แถบเครื่องมือ
- บานหน้าต่างคอนโซล
- แถบสถานะ
- บานหน้าต่างสคริปต์
- ส่วนช่วยเหลือ
แถบเมนู: แถบเมนูมีตัวเลือกในการสร้าง เปิด หรือแก้ไขไฟล์ นอกจากนี้ยังมีเมนูสำหรับ Tools, Debug และ Help
แท็บ: แท็บเป็นเพียงที่ที่สคริปต์ทำงาน สามารถเปิดได้สูงสุด 8 แท็บพร้อมกัน
แถบเครื่องมือ: แถบเครื่องมือมีปุ่มต่อไปนี้:
- ใหม่: เพื่อสร้างสคริปต์ใหม่
- เปิด: เปิดสคริปต์ที่มีอยู่
- บันทึก/ตัด/คัดลอก/วาง: หากต้องการบันทึกสคริปต์และตัวเลือกสำหรับการตัด ให้คัดลอกและวางสคริปต์
- เรียกใช้: เพื่อรันสคริปต์
- หยุด: เพื่อหยุดการดำเนินการ
นอกเหนือจากที่กล่าวมาข้างต้นแล้ว ยังมีปุ่มสำหรับเลิกทำและทำซ้ำ ล้างบานหน้าต่างเอาต์พุต และสร้างแท็บใหม่สำหรับเซสชันระยะไกล
- แท็บสคริปต์: การแก้ไขสคริปต์เสร็จสิ้นที่นี่ มีชื่อสคริปต์ปัจจุบัน และเมื่อวางเมาส์เหนือจะแสดงตำแหน่งของสคริปต์
- บานหน้าต่างผลลัพธ์: ผลลัพธ์จะแสดงที่นี่
- บานหน้าต่างคำสั่ง: สามารถเรียกใช้คำสั่งหรือคำสั่งได้ที่นี่ หากต้องการรันคำสั่งหลายบรรทัด ให้กด Shift+Enter หลังจากแต่ละคำสั่งสำหรับบรรทัดใหม่ และกด Enter เพื่อดำเนินการในที่สุด บานหน้าต่างคำสั่งมีตำแหน่งของไดเร็กทอรีการทำงานปัจจุบัน
- แถบสถานะ: แสดงสถานะของสคริปต์ ข้อผิดพลาดหรือข้อความแจ้งความสำเร็จจะแสดงขึ้นหลังการดำเนินการแต่ละครั้ง
- ช่วยเหลือ: เมนูช่วยเหลือมีไลบรารีหรือไฟล์สำหรับคำสั่งที่ใช้ได้ทั้งหมด สามารถเปิดได้ด้วยการกดปุ่ม F1 เช่นกัน วิธีใช้จะแนะนำวิธีการสร้าง cmdlet พารามิเตอร์ที่จำเป็นที่จำเป็น และประเภท
- การสร้างการเชื่อมต่อระยะไกล: การใช้ PowerShell ทำให้ง่ายต่อการเรียกใช้สคริปต์บนคอมพิวเตอร์ระยะไกล นี่เป็นหนึ่งในคุณสมบัติที่ได้รับการประเมินต่ำเกินไปของ PowerShell ที่หลายคนไม่รู้จัก หากต้องการเรียกใช้สคริปต์บนคอมพิวเตอร์ระยะไกล ให้คลิกแท็บ PowerShell ระยะไกลใหม่ ใต้เมนูไฟล์ จากนั้นระบบจะแจ้งรายละเอียดของคอมพิวเตอร์ระยะไกล
การดีบักสคริปต์ใน PowerShell ISE
การดีบักคือการหยุดการทำงานของสคริปต์ในตำแหน่งที่กำหนดเพื่อตรวจสอบค่าของตัวแปรหรือฟังก์ชัน ณ จุดนั้น ซึ่งจะช่วยในการตรวจสอบข้อผิดพลาดหรือตรวจสอบโฟลว์ลอจิคัลที่ถูกต้องของสคริปต์ สถานที่ที่หยุดการดำเนินการชั่วคราวเรียกว่าเบรกพอยต์ ทันทีที่ถึงจุดพักในสคริปต์ การดำเนินการจะหยุดชั่วคราว
เมื่อหยุดชั่วคราวแล้ว เราสามารถโฮเวอร์เหนือค่าของตัวแปรเพื่อทราบค่าปัจจุบันของมัน หรือคุณสามารถเรียกใช้คำสั่งหรือป้อนชื่อตัวแปรในบานหน้าต่างคอนโซลเพื่อทราบค่า ค่าใดๆ ของตัวแปรที่อยู่ในบริบทของสคริปต์ที่กำลังรันอยู่ก็สามารถแก้ไขได้เช่นกัน เมื่อตรวจสอบรายละเอียดทั้งหมดแล้ว สคริปต์ก็สามารถกลับมาทำงานต่อได้ สิ่งสำคัญที่ต้องจำไว้คือสามารถแทรกเบรกพอยท์ได้หลังจากบันทึกสคริปต์แล้วเท่านั้น
เบรกพอยต์ใน PowerShell ISE มีสามประเภท:
- จุดพักบรรทัด: สคริปต์จะหยุดชั่วคราวเมื่อถึงบรรทัดที่ต้องการ
- เบรกพอยต์ของตัวแปร: สคริปต์จะหยุดชั่วคราวเมื่อค่าของตัวแปรที่ต้องการมีการเปลี่ยนแปลง
- Command Breakpoint: เมื่อใดก็ตามที่คำสั่งที่กำหนดไว้ถูกรัน สคริปต์จะถูกหยุดชั่วคราว
การตั้งค่าเบรกพอยต์: สามารถตั้งค่าเบรกพอยต์ได้สองวิธี
- คลิกขวาที่บรรทัดที่ต้องหยุดการดำเนินการชั่วคราว และเลือก สลับเบรกพอยต์
- การกด F9 จะแทรกเบรกพอยต์บนบรรทัด
หากต้องการตั้งค่าเบรกพอยต์ตัวแปร ให้ดำเนินการด้านล่างในบานหน้าต่างคอนโซล
Set-PSBreakpoint -Script test.ps1 -การทดสอบตัวแปร
ข้างต้นตั้งค่าเบรกพอยต์ในการทดสอบตัวแปร
หากต้องการแสดงรายการเบรกพอยต์ในเซสชันปัจจุบัน Get-PSBreakPoint cmdlet สามารถเรียกใช้บนบานหน้าต่างคอนโซล
รหัส:
Write-Host "Breakpoint Tutorial"
Write-Host "Break point will be inserted here"
$testvariable = "test"
Write-Host "Variable breakpoint will be added above"เอาต์พุต: ในตัวอย่างด้านล่าง มีสองเบรกพอยท์ อันหนึ่งตั้งค่าโดยใช้ cmdlet และอีกอันตั้งค่าโดยใช้ F9
การลบเบรกพอยต์
หากต้องการลบเบรกพอยต์ ให้คลิกขวาที่เส้นแล้วเลือกสลับเบรกพอยต์ นอกจากนี้ยังสามารถลบออกจากบานหน้าต่างคอนโซลได้โดยใช้รหัสด้านล่าง
Remove-PSBreakpoint -Id 0ดูภาพด้านล่างที่มีการเอาเบรกพอยต์ออก
รหัส:
Write-Host "Breakpoint Tutorial"
Write-Host "Break point will be inserted here"
$testvariable = "test"
Write-Host "Variable breakpoint will be added above"
Remove-PSBreakpoint -Id 0เอาต์พุต:
1. หากต้องการลบเบรกพอยท์ทั้งหมดในเซสชันปัจจุบัน ให้เลือกลบเบรกพอยท์ทั้งหมดภายใต้เมนูแก้ไขข้อบกพร่อง หรือกด ctrl+shift+F9 หรือเรียกใช้ cmdlet ด้านล่างในบานหน้าต่างคอนโซล
Get-PSBreakpoint | Remove-PSBreakpoint2. เบรกพอยต์สามารถปิดใช้งานได้ แทนที่จะลบออกทั้งหมด เพื่อให้สามารถเปิดใช้งานได้ในภายหลังโดยใช้ cmdlet ด้านล่างโดยใช้รหัสของมัน
Disable-PSBreakpoint -Id 1
3. หากต้องการปิดใช้งานเบรกพอยต์ทั้งหมด ให้ใช้ cmdlet ด้านล่าง
Get-PSBreakpoint | Disable-PSBreakpoint4. สำหรับการเปิดใช้งานเบรกพอยต์ให้ใช้ cmdlet ด้านล่าง
Enable-PSBreakpoint -Id 10หากต้องการเปิดใช้งานเบรกพอยท์ทั้งหมด ให้คลิกที่เมนูแก้ไขข้อบกพร่อง และเลือกเปิดใช้งานเบรกพอยท์ทั้งหมด
บทสรุปของเซสชันการดีบัก
- หากต้องการเรียกใช้สคริปต์ ให้กด F5 สคริปต์จะหยุดชั่วคราวเมื่อถึงจุดพัก
- หากต้องการดำเนินการต่อหลังจากเบรกพอยต์ ให้กด F5 หรือพิมพ์ c ในบานหน้าต่างควบคุมแล้วป้อน
- เมื่อต้องการดูการติดตามสแต็ก ให้กด ctrl+shift+D หรือในบานหน้าต่างคอนโซล ให้พิมพ์ K
- หากต้องการเข้าสู่ฟังก์ชัน ให้กด F11
- หากต้องการก้าวข้ามฟังก์ชัน ให้กด F10
- หากต้องการหยุดการแก้ไข ให้กด shfi+F5
บทสรุป
ดังนั้นบทความนี้จึงกล่าวถึงรายละเอียดเกี่ยวกับ Windows PowerShell Ise โดยจะอธิบายคุณสมบัติต่างๆ ที่มีอยู่ การรันและการดีบักสคริปต์ โดยครอบคลุมรายละเอียดเกี่ยวกับตัวเลือกการแก้ไขจุดบกพร่องต่างๆ ที่พร้อมใช้งาน และวิธีการดำเนินการ เพื่อให้เข้าใจรายละเอียดมากขึ้น ขอแนะนำให้สำรวจ ISE โดยการเรียกใช้สคริปต์ตัวอย่างต่างๆ


