history: Event Designators

 
 1.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.