grep
[options] regexp [files]Search one or more files for lines that match a regular expression regexp. Regular expressions are described in Chapter 6. Exit status is 0 if any lines match, 1 if not, and 2 for errors. See also egrep and fgrep.
-b
Precede each line with its block number. (Not terribly useful.)
-c
Print only a count of matched lines.
-e
patUse this if pat begins with -
. Solaris: this option is only available in /usr/xpg4/bin/grep, not /usr/bin/grep. It is common, though, on many modern Unix systems.
-h
Print matched lines but not filenames (inverse of -l
).
-i
Ignore uppercase and lowercase distinctions.
-l
List filenames but not matched lines.
-n
Print lines and their line numbers.
-s
Suppress error messages for nonexistent or unreadable files.
-v
Print all lines that don't match regexp.
-w
Restrict regexp to matching a whole word (like using \<
and \>
in vi). Not on SVR4, but common on many commercial Unix systems.
List the number of users who use the C shell:
grep -c /bin/csh /etc/passwd
List header files that have at least one #include
directive:
grep -l '^#include' /usr/include/*
List files that don't contain pattern:
grep -c
pattern files| grep :0