Hack 51. Search the history using Control+R

I strongly believe that this may be your most frequently used feature of history. When you’ve already executed a very long command, you can simply search history using a keyword and re-execute the same command without having to type it fully. Press Control+R and type the keyword.

In the following example, I searched for red, which displayed the previous command “cat /etc/redhat-release” in the history that contained the word red.

# [Note: Press Ctrl+R from the command prompt, which will display the reverse-i-search prompt as shown below]
(reverse-i-search)`red‘: cat /etc/redhat-release
[Note: Press enter when you see your command, which will execute the command from the history]

# cat /etc/redhat-release
Fedora release 9 (Sulphur)

Sometimes you want to edit a command from history before executing it. For e.g. you can search for httpd, which will display service httpd stop from the command history, select this command and change the stop to start and re-execute it again as shown below.

# [Note: Press Ctrl+R from the command prompt, which will display the reverse-i-search prompt]

(reverse-i-search)`httpd‘: service httpd stop
[Note: Press either left arrow or right arrow key when you see your command, which will display the command for you to edit, before executing it]

# service httpd start