Saya mencari string foo=
dalam file teks di pohon direktori. Ada di mesin Linux yang umum, saya punya bash shell:
grep -ircl "foo=" *
Dalam direktori juga banyak file biner yang cocok dengan "foo =". Karena hasil ini tidak relevan dan memperlambat pencarian, saya ingin grep melewati pencarian file-file ini (kebanyakan gambar JPEG dan PNG). Bagaimana saya melakukannya?
Saya tahu ada opsi --exclude=PATTERN
dan --include=PATTERN
, tapi apa format pola? Halaman manual grep mengatakan:
--include=PATTERN Recurse in directories only searching file matching PATTERN.
--exclude=PATTERN Recurse in directories skip file matching PATTERN.
Pencarian di grep meliputi , grep termasuk mengecualikan , grep mengecualikan dan varian tidak menemukan sesuatu yang relevan
Jika ada cara yang lebih baik untuk menangkap hanya dalam file-file tertentu, saya siap untuk itu; memindahkan file yang menyinggung bukanlah pilihan. Saya tidak dapat mencari hanya direktori tertentu (struktur direktori berantakan, dengan semuanya ada di mana-mana). Juga, saya tidak dapat menginstal apa-apa, jadi saya harus melakukan dengan alat umum (seperti grep atau disarankan find ).
--exclude-dir=.svn
, jadi grep tidak masuk ke mereka sama sekali
grep -r --exclude-dir=var "pattern" .