โพสต์นี้จะสาธิตวิธีการต่างๆ ในการค้นหาสตริงในหลายๆ ไฟล์
วิธีค้นหาสตริงในไฟล์และรับชื่อไฟล์กลับใน PowerShell
วิธีการสมัครเหล่านี้สามารถใช้เพื่อค้นหาสตริงในหลาย ๆ ไฟล์:
วิธีที่ 1: ค้นหาสตริงในหลายไฟล์และส่งคืนชื่อไฟล์โดยใช้ Cmdlet “select-string”
สามารถค้นหาสตริงได้หลายไฟล์โดยใช้ปุ่ม “ เลือกสตริง cmdlet cmdlet นี้เลือกสตริงและค้นหารูปแบบข้อความในหลายไฟล์ดังนี้:
> Get-Childitem C:\หมอ - เรียกคืน | เลือกสตริง -ลวดลาย 'LinuxHint'
ที่นี่:
- “ Get-ChildItem ” cmdlet ใช้เพื่อดึงไฟล์จากตำแหน่งที่ระบุ
- “ - เรียกคืน ” ตั้งค่าสถานะ บังคับให้การค้นหาค้นหาสตริงที่ตรงกันในโฟลเดอร์ย่อย
- “ | ” ตัวดำเนินการไพพ์ใช้เพื่อส่งเอาต์พุตของคำสั่งเป็นอินพุตของคำสั่งถัดไป
- “ -ลวดลาย ” แฟล็กกำหนดสตริงที่ต้องการค้นหา
เอาต์พุต
เอาต์พุตที่ระบุระบุว่าตามรูปแบบที่ระบุ สตริงที่ตรงกับชื่อไฟล์ที่เกี่ยวข้องได้รับการส่งคืนแล้ว
วิธีที่ 2: ค้นหาสตริงในหลายไฟล์และส่งคืนชื่อไฟล์โดยใช้ 'sls' Cmdlet
“ sl ” เป็นนามแฝงของ “ เลือกสตริง ” cmdlet และใช้งานได้เหมือนกัน “ sl คำสั่ง ” ใช้กับ “ ล cmdlet
เราได้ยกตัวอย่างเพื่อแสดงให้เห็นถึงการทำงานของ “ sl ” cmdlet เพื่อค้นหาสตริงในหลาย ๆ ไฟล์:
> ล C:\หมอ - ร | sl 'LinuxHint'ที่นี่:
- “ ล ” cmdlet ใช้เพื่อแสดงรายการไฟล์และโฟลเดอร์
- “ -ร ” คือนามแฝงของ “ - เรียกคืน ” cmdlet ใช้เพื่อบังคับการค้นหาเพื่อค้นหาสตริงในโฟลเดอร์ย่อย:
สามารถสังเกตได้ว่าดึงชื่อไฟล์ที่มีสตริงที่ระบุสำเร็จแล้ว
บทสรุป
หากต้องการค้นหาสตริงในหลายไฟล์ใน PowerShell ให้ใช้ปุ่ม ' เลือกสตริง ” หรือ “ sl cmdlet ของ ในวิธีแรก ให้ใช้ 'select-string' กับ cmdlet 'Get-ChildItem' แฟล็ก '-recurse' และ '-pattern' และไปป์ไลน์ (|) ที่รวมเอาต์พุตของคำสั่งหนึ่งเข้ากับอินพุตของอีกคำสั่งหนึ่ง . ในคำสั่ง “sls” ให้ใช้นามแฝงทั้งหมดของคำสั่งที่ใช้ในวิธีแรก เนื่องจาก “sls” เป็นนามแฝงของ cmdlet “select-string” โพสต์นี้ได้นำเสนอวิธีการค้นหาสตริงในหลายไฟล์หลายวิธี