Grep
From Linuxintro
Revision as of 10:51, 27 September 2013 by imported>ThorstenStaerk
grep is a command that reads strings and only outputs them if they match a pattern. For example to show all lines in a file syslog that contain the string Nov call it like:
grep "Nov" syslog
Examples
- Show all lines that do not contain blabla
grep -v blabla filename.txt
- Match any character
With a dot (.) you can match any character
grep -E "L.nux"
Matches Linux, Lanux L nux, but not Lnux
- Match all characters
With a .* you can match an arbitrary count of any character
grep -E "L.*nux"
Matches Linux, Liinux, Lanux, L nux and Lnux
- Match any character but blank
grep -E "L[^ ]nux"
Matches Linux, Lanux, but not Lnux and not L nux
- Match any line starting with a character
grep -E "U"
Matches all lines starting with U
- Show all files containing content
grep -ir "content" *
Usecases
Show all running processes
ps auxf | grep -E "^[^ ]+ +[^ ]+ +[^ ]+ +[^ ]+ +[^ ]+ +[^ ]+ +[^ ]+ +R"