Bind the bash history methods

Bash is an awesome shell and also very configurable. Some of bash’s build-in functions are not binded to keys, some of which REALLY should be!

Bash has two very useful functions used for searching your bash history:

  • history-search-backward
  • history-search-forward

So the question is how do we bind them. I bound them to Control-<up> and Control-<down>. To do this add the following lines to your ~/.inputrc file:
"\e[1;5A": history-search-backward
"\e[1;5B": history-search-forward

Note: To test it out you can use the bind command for your current shell:
bind "\e[1;5A": history-search-backward

If you want to use a different key combination then you can use the ‘read’ command to print it out, for example runnding the command read, then hitting control-<up>:

matt@wks1005847 ~ $ read
^[[1;5A

When we bind the key we replace the ‘^[‘ with a ‘\e’ as ‘^[‘ can match the <Escape> key.