PowerShell: วิธีใช้ Select-String ด้วยการจับคู่แบบตรงทั้งหมด
คุณสามารถใช้ไวยากรณ์พื้นฐานต่อไปนี้ใน PowerShell เพื่อใช้ Select-String cmdlet เพื่อค้นหาสตริงที่ตรงกับรูปแบบทุกประการ:
Select-String "\bWest\b" -Path "c:\users\bobbi\data1\conferences.txt"
ตัวอย่างนี้จะส่งคืนทุกบรรทัดจากไฟล์ชื่อ conferences.txt ซึ่งมีสตริง "West" ทุกประการในบรรทัด
โปรดทราบว่าเราใช้ \b ก่อนและหลังสตริงที่เราสนใจเพื่อระบุขอบเขตของคำ
ซึ่งจะทำให้เราสามารถส่งคืนเฉพาะบรรทัดที่มีสตริง "ตะวันตก" ที่แน่นอน และไม่มีการเปลี่ยนแปลง เช่น "มิดเวสต์" หรือ "ตะวันตก" หรืออะไรที่คล้ายกัน
ตัวอย่างต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ
ตัวอย่าง: วิธีใช้ Select-String ที่ตรงกันทุกประการใน PowerShell
สมมติว่าเรามีไฟล์อยู่ที่เส้นทางต่อไปนี้:
c:\users\bobbi\data1\conferences.txtเราสามารถใช้ Get-Content cmdlet เพื่อดูเนื้อหาทั้งหมดของไฟล์นี้:
ไฟล์นี้มีบรรทัดทั้งหมดหกบรรทัดที่ให้ข้อมูลเกี่ยวกับการประชุมที่ทีมบาสเก็ตบอลต่างๆ เป็นสมาชิกใน NBA
สมมติว่าเราต้องการส่งคืนบรรทัดทั้งหมดที่มีสตริง "West" ตรงที่ใดก็ได้ในบรรทัด
สมมติว่าเราพยายามใช้ไวยากรณ์ต่อไปนี้:
Select-String "West" -Path "c:\users\bobbi\data1\conferences.txt" ภาพหน้าจอต่อไปนี้แสดงวิธีใช้ไวยากรณ์นี้ในทางปฏิบัติ:
ซึ่งจะส่งคืนแต่ละบรรทัดที่มี "ตะวันตก" โดยไม่คำนึงถึงการจับคู่แบบตรงทั้งหมด
ตัวอย่างเช่น เราจะเห็นว่าบรรทัดที่มีทั้ง "ตะวันตก" หรือ "ตะวันตก" จะถูกส่งคืนทั้งคู่
ในการค้นหาการทำงานแบบตรงทั้งหมด เราต้องใช้ไวยากรณ์ต่อไปนี้แทน:
Select-String "\bWest\b" -Path "c:\users\bobbi\data1\conferences.txt" ซึ่งจะส่งคืนเฉพาะบรรทัดหมายเลข 4 ในไฟล์ ซึ่งเป็นบรรทัดเดียวที่มีสตริง "West" ตรงกันทุกประการ และไม่ใช่คำรูปแบบใดรูปแบบหนึ่ง


