Linux

ช่วงนี้งานเข้าเยอะมาก พอดีมีงานนึงที่ต้องไล่โค้ดจากเว็บเก่าที่เขียนได้เละมากๆ ไม่มีโครงสร้าง และมีไฟล์อยู่มั่วเต็มไปหมด ปรากฎว่าเราต้องการดูคลาสตัวนึงจากในบรรดาเป็นร้อยๆ ไฟล์จะทำอย่างไร?
ให้เราเปิด Terminal แล้ว cd ไปที่โฟลเดอร์ที่ต้องการหาไฟล์ แล้วพิมพ์คำสั่ง (สมมติว่าชื่อคลาสที่ต้องการค้นหามีชื่อว่า MyClass)
grep "MyClass" *
คำสั่งข้างบนจะค้นหาแค่ทุกๆ ไฟล์จากในไดเร็กทอรี่ปัจจุบันเท่านั้น แต่จะไม่ค้นหาในไดเร็กทอรี่ย่อยๆ ลงไป แต่ถ้าต้องการเพิ่มเงื่อนไขเป็น ค้นหาในทุกๆ ไดเร็กทอรี่ย่อยด้วย และค้นหาเฉพาะไฟล์ .php ให้พิมพ์คำสั่ง
grep -R "MyClass" *.php
ขอตัวไปปั่นงานต่อก่อนล่ะครับ
Update: จากคอมเมนท์ของ hiddenmin ถ้าเราเพิ่ม -n จะทำให้เห็นว่าข้อความที่เราค้นหาอยู่บรรทัดไหนด้วยนะครับ
grep -Rn "MyClass" *.php

Comments
-n
-n ด้วยก็ดีนะเธอจะได้รู้ว่าอยู่บันทัดใหน
ต้องเธอว์ด้วยสิเธอว์
ต้องเธอว์ด้วยสิเธอว์ ไม่อินเทรนด์เลย :Pปล. เพิ่มให้แล้วนะเธอว์
Add new comment