ค้นหาเว็บไซต์

บทช่วยสอนการเขียนสคริปต์ Windows PowerShell สำหรับผู้เริ่มต้น


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

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

Windows PowerShell คืออะไร

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

คุณสมบัติและการใช้งานของ PowerShell

ดังนั้น ด้วย PowerShell คุณสามารถ:

  • พัฒนาด้วย cmdlets
  • งานอัตโนมัติ
  • จัดการอุปกรณ์ Windows OS จากระยะไกลโดยใช้สคริปต์ PowerShell และ cmdlets
  • เข้าถึงกรอบงาน .NET ทุกประเภท
  • รับฟัง ส่งต่อ และดำเนินการในกิจกรรมที่เกี่ยวข้องกับฝ่ายบริหาร
  • ควบคุมส่วนประกอบเซิร์ฟเวอร์และเวิร์กสเตชันด้วยไวยากรณ์ที่ไม่ซับซ้อน
  • แบ่งปันข้อมูลระหว่างแอปพลิเคชัน
  • รับการสนับสนุนในตัวสำหรับการถ่ายโอนไฟล์ระหว่างอุปกรณ์โดยใช้ BITS (Background Intelligence Transfer Service)
  • เรียกใช้งานสคริปต์ในเบื้องหลังบนอุปกรณ์ภายในเครื่องหรืออุปกรณ์ระยะไกลมากกว่าหนึ่งเครื่อง
  • สคริปต์มีความปลอดภัยเมื่อเปรียบเทียบกับ VBScript หรือภาษาสคริปต์อื่นๆ

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

บทช่วยสอนการเขียนสคริปต์ Windows PowerShell สำหรับผู้เริ่มต้น

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

  1. วิธีเปิดใช้งาน PowerShell
  2. ตรวจสอบการตั้งค่านโยบายการดำเนินการสคริปต์
  3. PowerShell Cmdlet คืออะไร
  4. ความแตกต่างระหว่าง Cmdlet และคำสั่ง
  5. การเขียนสคริปต์ PowerShell คืออะไร
  6. องค์ประกอบของสคริปต์ PowerShell คืออะไร
  7. เรียกใช้สคริปต์ PowerShell

1. จะเปิด PowerShell ได้อย่างไร?

PowerShell ได้รับการติดตั้งไว้ล่วงหน้าใน Windows ดังนั้นคุณไม่จำเป็นต้องดาวน์โหลดและติดตั้งแยกต่างหาก ต่อไปนี้เป็นวิธีเปิด PowerShell:

คลิกขวาที่ Start และเลือก Windows Terminal จากเมนู

ซึ่งจะเป็นการเปิดหน้าต่าง PowerShell

หากต้องการเปิด PowerShell ด้วยสิทธิ์ของผู้ดูแลระบบ ให้คลิกขวาที่ Start และเลือก Windows Terminal (Admin)

ตอนนี้คุณสามารถเรียกใช้ cmdlets หรือ คำสั่ง ใน PowerShell ได้แล้ว

อ่าน: วิธีทำให้งานอัตโนมัติด้วย PowerShell

2. ตรวจสอบการตั้งค่านโยบายการดำเนินการสคริปต์

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

3. PowerShell Cmdlet คืออะไร

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

อ่าน: วิธีกำหนดเวลาสคริปต์ PowerShell โดยใช้ Task Scheduler

4. ความแตกต่างระหว่าง Cmdlet และ Command

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

  • Cmdlet เป็นวัตถุคลาส .NET Framework ดังนั้น คุณไม่สามารถเรียกใช้คำสั่งเหล่านี้แยกต่างหาก
  • สามารถสร้าง Cmdlets ได้อย่างง่ายดายเนื่องจากคำสั่งเหล่านี้สั้นกว่าเมื่อเปรียบเทียบกับคำสั่ง
  • ต่างจาก PowerShell, cmdlet ไม่จัดการการนำเสนอข้อผิดพลาด การแยกวิเคราะห์ หรือการจัดรูปแบบเอาต์พุต
  • เนื่องจากทราบว่า cmdlets ทำงานบนวัตถุ ไม่ใช่บนสตรีมข้อความและวัตถุ
  • Cmdlets ประมวลผลวัตถุครั้งละหนึ่งวัตถุเท่านั้นเนื่องจากเป็นแบบบันทึก

สำหรับ PowerShell ความแตกต่างต่อไปนี้คือ:

  • แม้ว่าคำสั่งส่วนใหญ่จะมี cmdlets แต่ก็มีคำสั่งประเภทอื่นๆ เช่น ฟังก์ชัน นามแฝง หรือโปรแกรมปฏิบัติการภายนอก
  • Cmdlet เป็นคำสั่งประเภทหนึ่งใน PowerShell แต่คำสั่งสามารถครอบคลุมการดำเนินการและฟังก์ชันการทำงานได้หลากหลายยิ่งขึ้น

กล่าวโดยสรุป cmdlet ก็คือคำสั่งใน PowerShell แต่ไม่ใช่ทุกคำสั่งใน PowerShell ที่จำเป็นต้องเป็น cmdlets

5. การเขียนสคริปต์ PowerShell คืออะไร

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

ด้านล่างนี้คือส่วนประกอบที่สร้างขั้นตอนของสคริปต์

อ่าน: วิธีเปิดหรือปิดการเรียกใช้สคริปต์ Windows PowerShell

6. องค์ประกอบของสคริปต์ PowerShell มีอะไรบ้าง

รายการคำสั่ง PowerShell

  • รับกระบวนการ - ดึงรายละเอียดที่เกี่ยวข้องกับกระบวนการทำงานของระบบขึ้นมา
  • รับบริการ - รับสถานะปัจจุบันของบริการบนระบบ
  • Get-ChildItem - ดึงรายการไฟล์และโฟลเดอร์ทั้งหมดในไดเรกทอรีขึ้นมา

ประเภทข้อมูล PowerShell

ประเภทข้อมูล PowerShell ตามปกติบางประเภท ได้แก่:

  • สตริง - ชุดอักขระภายในเครื่องหมายคำพูดเดี่ยว (' ') หรือเครื่องหมายคำพูดคู่ ( ” “) ซึ่งอาจเป็นตัวอักษร ตัวเลข สัญลักษณ์ และช่องว่าง
  • จำนวนเต็ม - เหล่านี้เป็นตัวเลขทั้งหมดลบส่วนทศนิยมหรือเศษส่วน
  • สองเท่า - เป็นตัวเลขทศนิยมที่มีความแม่นยำเป็นทศนิยม เช่น 2.15 หรือ -0.2
  • บูลีน - โดยทั่วไปจะใช้ในนิพจน์แบบมีเงื่อนไขและการเปรียบเทียบ โดยมีค่าที่เป็นไปได้ว่า จริง หรือ เท็จ
  • Hashtable - เป็นกลุ่มของคู่คีย์-ค่า โดยแต่ละคีย์จะต้องไม่ซ้ำกันเหมือนรหัสผ่าน ส่วนใหญ่จะใช้เพื่อจัดเก็บและดึงข้อมูลโดยใช้คีย์ที่มีชื่อ
  • อาร์เรย์ - เป็นกลุ่มขององค์ประกอบที่เรียงลำดับและจัดทำดัชนีซึ่งอยู่ในประเภทข้อมูลเดียวกัน เช่น ชุดของชื่อหรือจำนวนเต็ม หากต้องการสร้างอาร์เรย์ใน PowerShell คุณต้องกำหนดรายการค่าที่คั่นด้วยเครื่องหมายจุลภาคและอยู่ในวงเล็บให้กับตัวแปร ดังที่แสดงด้านล่าง
$colors = ("red", "green", "blue")

หากต้องการเข้าถึงแต่ละองค์ประกอบของอาร์เรย์แยกกัน คุณสามารถใช้ตัวดำเนินการดัชนี [n] ตามกฎแล้ว ดัชนีขององค์ประกอบแรกในอาร์เรย์จะเป็น 0 เสมอ โปรดดูตัวอย่างด้านล่าง:

$colors = ("red", "green", "blue")

Write-Host $colors[0] # Output from first element: red

Write-Host $colors[1] # Output from second element: green

Write-Host $colors[2] # Output from third element: blue

คุณยังสามารถกำหนดค่าใหม่ให้กับดัชนีได้ดังนี้:

$colors = ("red", "green", "blue")


$colors[1] = "white"


Write-Host $colors[1] # Output: white

ตัวแปร PowerShell

เหล่านี้เป็นอาร์กิวเมนต์ของคำสั่งและใช้ในการจัดเก็บค่า

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

ในการกำหนดค่าให้กับตัวแปร คุณต้องใช้สัญลักษณ์ = ดังที่แสดงด้านล่าง:

    $Color = "Red"
    $number = 20

ไปป์ PowerShell

ไปป์ PowerShell (หรือที่เรียกว่าไปป์ไลน์) เป็นตัวดำเนินการหรือสัญลักษณ์ | ที่ส่งผ่านเอาต์พุตของ cmdlet หนึ่งไปยังอีกอันหนึ่ง ซึ่งช่วยในการสร้างคำสั่งบรรทัดเดียวที่มีประโยชน์สำหรับงานที่ซับซ้อน

ด้านล่างนี้เป็นตัวอย่างที่ช่วยเรียกบริการของระบบทั้งหมดและจัดประเภทตาม สถานะ:

Get-Service | Sort-Object -Property Status

ตัวดำเนินการ PowerShell

Operators

Symbols

Purpose

Arithmetic Operators +, -, *, /, % Calculate numeric values
Assignment Operators %=, +=, -=, =, *=, /= Helps to assign, change, or change values to variables
Comparison Operators -le, -ne, -gt, -lt, -eq, -ge Binary operators that compare two integer or string values that return True/False based on whether the operator condition is met or not.
Logical Operators -or, -xor, -and, -not, ! Based on Boolean values, these add up multiple operator expressions and statements into complex conditionals. They return output in Boolean values.
Redirection Operators >>, >, 2>>, 2>, and 2>&1 Sends the output of a command or expression to a text file.
Split and Join Operators -Split, -Join Divides and adds substrings.
Type Operators -is not, -is, -as Finds or amend the .NET Framework type of an object.
Unary Operators ++ (Increment), — (Decrement) Increase or decrease the value of a variable by 1

หากต้องการดูรายละเอียดเกี่ยวกับ cmdlet ใดๆ คุณสามารถใช้คำสั่งด้านล่าง:

Get help for cmdlets

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

7. เรียกใช้สคริปต์ PowerShell

แม้ว่าคุณสามารถใช้ แผ่นจดบันทึก เพื่อสร้างสคริปต์แล้วเรียกสคริปต์จาก PowerShell ได้ แต่การใช้ PowerShell Integrated Scripting Environment (ISE) จะดีกว่าเสมอ

แม้ว่าแอป PowerShell ISE จะติดตั้งไว้ล่วงหน้าใน Windows 11 แต่หากคุณไม่พบแอปดังกล่าวในคอมพิวเตอร์ คุณสามารถติดตั้ง PowerShell ISE ผ่านฟีเจอร์เสริมได้

หากต้องการเริ่ม PowerShell ISE ให้เปิด Windows PowerShell ที่ยกระดับ พิมพ์คำสั่งด้านล่างแล้วกด Enter:

powershell_ise.exe

คุณสามารถรับข้อมูลเพิ่มเติมที่เกี่ยวข้องกับ PowerShell ISE ผ่านทางหน้า Microsoft อย่างเป็นทางการ

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

# Prompt the user for their name

$name = Read-Host "Enter your name"

# Greet the user

Write-Host "Hello, $name! Welcome to PowerShell scripting."

เมื่อคุณป้อนสคริปต์แล้ว ให้คลิกที่ไอคอนลูกศรสีเขียวในแถบเมนูเพื่อ เรียกใช้ สคริปต์หรือกด F5

จากนั้น พิมพ์ชื่อของคุณถัดจาก ป้อน ชื่อของคุณ: ฟิลด์ และกด Enter

มันจะสร้างคำทักทายดังนี้:

Hello, Madhu! Welcome to PowerShell scripting.

อ่าน: Windows PowerShell ISE กับ Windows PowerShell: อะไรคือความแตกต่าง

ฉันจะเรียนรู้การเขียนสคริปต์ PowerShell อย่างรวดเร็วได้อย่างไร

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

บทความที่เกี่ยวข้อง