I was trying to search for a particular word BML.I
in a current directory.
When I tried with the below command:
grep -l "BML.I" *
It is displaying all the results if it contains the word BML
Is it possible to grep for the exact match BML.I
Use this command:
ls | grep -x "BML.I"
I use
fgrep
, which is the same asgrep -F
You need to escape the . (period) since by default it matches against any character, and specify -w to match a specific word e.g.
Note there are two levels of escaping in the above. The quotes ensure that the shell passes
BML\.I
to grep. The\
then escapes the period forgrep
. If you omit the quotes, then the shell interprets the\
as an escape for the period (and would simply pass the unescaped period togrep
)try
grep -wF
from man page: