Command : ค้นหาคำที่ต้องการในไฟล์

เคยสงสัยไหมว่าถ้าเรามี text file เยอะๆในเครื่องแล้วเราเกิดอยากหาคำหนึ่งคำว่ามันอยู่ใน text file ไหนบ้างเราจะทำยังไง เช่น สมมติผมอยากหาคำว่า iframe ในไฟล์เว็บของผม โดยอยากรู้ว่าในไฟล์ในไหนบ้างที่มีคำว่า iframe อยู่ ไม่ต้องไม่หาโปรแกรมตัวไหนมาติดตั้งเพิ่มครับ Command line ช่วยคุณได้

โดยผมจะใช้คำสั่ง grep ช่วยเหลือโดย systax จะเป็นดังนี้

grep "text string to search" directory-path

ตัวอย่างครับ

หาในไฟล์ที่ต้องการ

[bash]grep "iframe" /var/www/html/*.php[/bash]

ค้นหา subdirectory ย่อยทั้งหมดให้เพิ่ม "-r"

[bash]grep -r "iframe" /var/www/html/*.php[/bash]

สิ่งที่ได้ออกมา

...
filename.php: iframe
...

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

[bash]grep -H "iframe" /var/www/html/ -R | cut -d: -f1[/bash]

สิ่งที่ได้ออกมา

...
filename.php
...

ลองนำไปประยุกต์ใช้กันน่ะครับ

Thank : http://www.cyberciti.biz/faq/howto-search-find-file-for-text-string/

Add new comment