1. # agrep provides an approximate grep
  2. # searching for specific patterns using grep and regular expressions (mostly copied from http://www.robelle.com/library/smugbook/regexpr.html):
    1. # the theory:
       ^ (Caret)        =    match expression at the start of a line, as in ^A.
       $ (Question)     =    match expression at the end of a line, as in A$.
       \ (Back Slash)   =    turn off the special meaning of the next character, as in \^.
       [ ] (Brackets)   =    match any one of the enclosed characters, as in [aeiou].
                             Use Hyphen "-" for a range, as in [0-9].
       [^ ]             =    match any one character except those enclosed in [ ], as in [^0-9].
       . (Period)       =    match a single character of any value, except end of line.
       * (Asterisk)     =    match zero or more of the preceding character or expression.
       \{x,y\}          =    match x to y occurrences of the preceding.
       \{x\}            =    match exactly x occurrences of the preceding.
       \{x,\}           =    match x or more occurrences of the preceding. 
    2. # examples:
       cat -v -e -t dump                           # show non-printing characters too
       grep BOB tmpfile                        # search 'tmpfile' for 'BOB' anywhere in a line
       grep -i -w blkptr *                     # case insensitive search all files in the current directory for the word blkptr
       grep run[- ]time *.txt                  # find 'run time' or 'run-time' in all txt files
       grep smug files                         # search files for lines with 'smug'
       grep '^smug' files                      # 'smug' at the start of a line
       grep 'smug$' files                      # 'smug' at the end of a line
       grep '^smug$' files                     # lines containing only 'smug'
       grep '\^s' files                        # lines starting with '^s', "\" escapes the ^
       grep '[Ss]mug' files                    # search for 'Smug' or 'smug'
       grep 'B[oO][bB]' files                  # search for BOB, Bob, BOb or BoB 
       grep '^$' files                         # search for blank lines
       grep '[0-9][0-9]' file                  # search for pairs of numeric digits
       grep '^From: ' /var/spool/mail/$USER    # list your mail
       grep '[a-zA-Z]'                         # any line with at least one letter
       grep '[^a-zA-Z0-9]                      # anything not a letter or number
       grep '[0-9]\{3\}-[0-9]\{4\}'            # 999-9999, like phone numbers
       grep '^.$'                              # lines with exactly one character
       grep '"smug"'                           # 'smug' within double quotes
       grep '"*smug"*'                         # 'smug', with or without quotes
       grep '^\.'                              # any line that starts with a Period "."
       grep '^\.[a-z][a-z]'                    # line start with "." and 2 lc letters