33.1.1 Event Designators
An event designator is a reference to a command line entry in the
history list. 
Unless the reference is absolute, events are relative to the current
position in the history list. 
     
- !
- Start a history substitution, except when followed by a space, tab,
the end of the line, or `='.
     
 
- !n
- Refer to command line n.
     
 
- !-n
- Refer to the command n lines back.
     
 
- !!
- Refer to the previous command.  This is a synonym for `!-1'.
     
 
- !string
- Refer to the most recent command
preceding the current position in the history list
starting with string.
     
 
- !?string- [?]
- Refer to the most recent command
preceding the current position in the history list
containing string. 
The trailing
`?' may be omitted if the string is followed immediately by
a newline.
     
 
- ^string1- ^string2- ^
- Quick Substitution.  Repeat the last command, replacing string1
with string2.  Equivalent to
!!:s/string1/string2/.
 
- !#
- The entire command line typed so far.