Sodamhan.com

TL;DR

history expansion

Reuse and expand the shell history in sh, Bash, Zsh, rbash and ksh. More information: https://www.gnu.org/software/bash/manual/html_node/History-Interaction.

  • Run the previous command as root (!! is replaced by the previous command):

sudo !!

  • Run a command with the last argument of the previous command:

command !$

  • Run a command with the first argument of the previous command:

command !^

  • Run the Nth command of the history:

!n

  • Run the command n lines back in the history:

!-n

  • Run the most recent command containing string:

!?string?

  • Run the previous command, replacing string1 with string2:

^string1^string2^

  • Perform a history expansion, but print the command that would be run instead of actually running it:

!-n:p

This document was created using the contents of the tldr project.