🇯🇵 日本語 | 🇺🇸 English | 🇪🇸 Español | 🇵🇹 Português | 🇹🇭 ไทย | 🇨🇳 中文

10 คำสั่ง PowerShell ที่ควรรู้เป็นอันดับแรก (Get-Process, Set-Location และอื่นๆ)

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

ไม่ต้องกังวลครับ คำสั่งของ PowerShell (Cmdlet) มีกฎการตั้งชื่อที่สอดคล้องกันแบบ กริยา-คำนาม ทำให้เมื่อจับเคล็ดลับได้แล้วจะจำง่ายและนำไปประยุกต์ใช้ได้หลากหลายมาก ในบทความนี้เราได้คัดเลือก 10 Cmdlet พื้นฐานที่ควรรู้เป็นอันดับแรก ซึ่งมีประโยชน์จริงๆ สำหรับการทำงานในแต่ละวันของ Web Creator มาให้แล้ว

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


พื้นฐานของพื้นฐาน: Cmdlet สำหรับการเดินทางและการแสดงผล

ก่อนอื่น มาเริ่มกันที่ 3 Cmdlet ที่จำเป็นสำหรับการทำงานบนเทอร์มินัล นั่นคือ "การตรวจสอบตำแหน่งปัจจุบัน", "การเดินทาง" และ "การตรวจสอบว่ามีอะไรอยู่ข้างใน" คำสั่งเหล่านี้จะเป็นเหมือน "ตา" และ "เท้า" ของคุณในโลก CUI

1. Get-Location (alias: pwd, gl)

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

Get-Location

2. Set-Location (alias: cd, sl, chdir)

ใช้ย้ายไดเรกทอรี สามารถใช้งานได้ในความรู้สึกเดียวกับ cd ของ Bash เลยครับ ดีใจใช่ไหมล่ะครับที่มี alias cd มาให้ด้วย

# ย้ายไปยังโฟลเดอร์ 'work' ในไดรฟ์ C
Set-Location C:\work

3. Get-ChildItem (alias: ls, dir, gci)

ใช้แสดงรายการไฟล์และโฟลเดอร์ในไดเรกทอรีปัจจุบัน ทำหน้าที่เหมือน ls ใน Bash และ dir ใน Command Prompt

Get-ChildItem

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

# แสดงทั้งหมดรวมถึงที่อยู่ในโฟลเดอร์ย่อย
Get-ChildItem -Recurse

การจัดการไฟล์: Cmdlet สำหรับสร้าง, ดู และลบ

ต่อไป เรามาดู Cmdlet ที่ใช้จัดการไฟล์และโฟลเดอร์โดยตรงกัน คำสั่งเหล่านี้จะเป็นเหมือน "มือ" ของคุณ

4. New-Item (alias: ni)

ใช้สร้างไฟล์หรือโฟลเดอร์ใหม่ โดยใช้ -ItemType เพื่อระบุว่าจะสร้างอะไร

การสร้างไฟล์ว่าง:

New-Item -Path ".\style.css" -ItemType File

การสร้างโฟลเดอร์ใหม่:

New-Item -Path ".\assets" -ItemType Directory

5. Get-Content (alias: cat, gc, type)

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

Get-Content -Path ".\style.css"

6. Remove-Item (alias: rm, del, erase, rmdir)

ใช้ลบไฟล์และโฟลเดอร์ 【สำคัญ】คำสั่งนี้จะลบไฟล์อย่างถาวรทันทีโดยไม่ผ่านถังขยะ และไม่สามารถกู้คืนได้ โปรดใช้ด้วยความระมัดระวังอย่างสูงสุด

Remove-Item -Path ".\style.css"

แก่นแท้ของ PowerShell: Cmdlet สำหรับจัดการอ็อบเจกต์

จากนี้ไปคือการแสดงศักยภาพที่แท้จริงของ PowerShell เราจะมาแนะนำ Cmdlet ที่ใช้ดึงข้อมูลสถานะของระบบมาในรูปแบบ "อ็อบเจกต์" และจัดการกับมันได้อย่างอิสระ

7. Get-Process (alias: ps)

ดึงรายการโปรเซส (โปรแกรม) ที่กำลังทำงานอยู่มาในรูปแบบอ็อบเจกต์ ซึ่งมีข้อมูลอย่างละเอียดเช่น การใช้ CPU และหน่วยความจำรวมอยู่ด้วย

Get-Process

8. Where-Object (alias: where, ?)

ใช้กรองอ็อบเจกต์ที่ส่งผ่านมาทางไปป์ไลน์ `|` ตามเงื่อนไขที่กำหนด ทำงานคล้ายกับ WHERE clause ใน SQL

ตัวอย่างเช่น ลองดึงเฉพาะโปรเซสของ Google Chrome จากโปรเซสทั้งหมดดู

Get-Process | Where-Object { $_.ProcessName -eq "chrome" }

9. Sort-Object (alias: sort)

ใช้เรียงลำดับอ็อบเจกต์ตามค่าของคุณสมบัติ (property) ที่ระบุ

ลองนำโปรเซสของ Chrome จากเมื่อสักครู่มาเรียงลำดับตามปริมาณการใช้หน่วยความจำจากมากไปน้อย

Get-Process | Where-Object { $_.ProcessName -eq "chrome" } | Sort-Object -Property WS -Descending

10. Get-Help (alias: help, man)

นี่เป็นคำสั่งสุดท้ายที่จะแนะนำ แต่จริงๆ แล้วอาจจะเป็นคำสั่งที่สำคัญที่สุดเลยก็ได้ Get-Help คือครูส่วนตัวของคุณที่จะสอนวิธีใช้ Cmdlet อื่นๆ หากมีคำสั่งไหนที่คุณไม่ทราบวิธีใช้ ให้ลองใช้คำสั่งนี้ก่อนเลย

Get-Help Get-Process

หากเพิ่ม -Examples ออปชันเข้าไป จะสามารถดูตัวอย่างการใช้งานจริงได้

Get-Help Get-Process -Examples

สรุป

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

เคล็ดลับในการจำคือ ให้จำชื่อเต็มในรูปแบบ กริยา-คำนาม ไม่ใช่แค่ alias หากทำเช่นนั้น แม้จะเป็นคำสั่งที่ไม่เคยเห็นมาก่อน คุณก็จะสามารถเดาได้ว่า "ถ้าอยากจะดึงข้อมูล ก็น่าจะเป็น `Get-อะไรสักอย่าง`" ซึ่งจะทำให้การเรียนรู้ของคุณเร็วขึ้นอย่างมาก

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

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