“Those who cannot remember the past are condemned to repeat it.” – George
Santayana, (c/o Wikipedia)
Sometimes I want to remember the past so I’m able to repeat it. (I’m always
looking for ways to save a few keystrokes.) I just found out I can run Linux
commands from my history with event designators like this:
$ !svn svn co http://svn.example.com/svn/ExampleProject/trunk .
!svn will run the last
svn command I ran, which is much easier than
$ svn co $s/ExampleProject/trunk .
($s is set to the root of my SVN repository to save some typing.)
!svn is also faster than using the up arrow to scroll back to my last
svn command, as this often requires me to hit the up arrow several times
until I find it, and sometimes I scroll right past it and it ends up taking a
lot longer than it would for me to just retype it.
You can also use history to show the most recent commands you’ve executed, and
then use the event designator (
!N) to run the Nth command in your history:
$ history ... 636 svn log -l 10 637 svn up 638 history $ !637 svn up At revision 828.
grep for an abbreviated list.
You can see other useful history commands in this article.