Re:Unix Tricks
by rzimmerman on Thursday July 03, 2014 @02:59AM
(#7981834)
Ctrl-R is by far the most useful one for me.
[ Parent
| on HN ]
I like this in my ~/.inputrc
"\e[A":history-search-backward
"\e[B":history-search-forward
Type a few characters and hitting the arrow keys will show only commands that match those first few characters.The article doesn't say, so it's worth mentioning that you can type ctrl-R multiple times to search further back into command history.
It doesn't mention either that you can search to the other direction by pressing ctrl-s (usually it also sends the stop signal which should be removed by "stty -ixon"). Very useful if you go past the entry you are looking for.
Re:Unix Tricks
by danielweber on Thursday July 03, 2014 @07:52AM
(#7982504)
I use C-r constantly. But sometimes I need to find a command, and then edit it before running it. What is the proper way to exit "search mode" and go into the normal "edit" mode?
Any movement key will do the trick. I usually use cursor-right or the end key.
It's so ingrained I had to actually do it in a shell to know what it was I did.
Re:Unix Tricks
by danielweber on Thursday July 03, 2014 @10:08AM
(#7983130)
ISTR pressing one of those keys would obliterate the part of my line where I was writing, putting in ^B characters.
I can't replicate it now on my test box; it works exactly the way you say it should. It may be a terminal issue; I'm currently on Windows using cygwin to ssh to Linux.
C-g (as in quit https://www.gnu.org/software/emacs/manual/html_node/emacs/Qu...) is the 'proper' way but yeah, not the only one.
Re:Unix Tricks
by danielweber on Thursday July 03, 2014 @10:06AM
(#7983117)
That just wipes out the whole line (on my test box).
Re:Unix Tricks
by JonnieCache on Thursday July 03, 2014 @04:22AM
(#7982067)
Ctrl-P autocompletes from your history too. It works like Ctrl-R but after you've already started typing, if you see what I mean.
This might be a zsh thing though.
Ctrl-p in emacs takes you to the previous line. Since readline uses emcs-style notation by default, Ctrl-p takes you to the previous command in history (and Ctrl-n to the next). I don't know about zsh though.
Also, other emacs keys work like back: ctrl-b, meta-b, forward: ctrl-f, meta-f, start of line: ctrl-a, end of line: ctrl-e etc.