Once in a lifetime, you may find yourself needing to edit very long command lines in Terminal.app:
ldapsearch -x -H ldaps://chewbacca.infra.emory.edu:636 -b "dc=Eu,dc=Emory,dc=Edu" -s sub -D hansel -W \ (&(&(&(objectClass=user)(objectCategory=person))(samaccountname=akbarandjeff)(|(memberOf=CN=G LAW STAFF,OU=Global Groups,OU=LAW,DC=Eu,DC=Emory,DC=Edu)(memberOf=CN=G LAW FACULTY,OU=Global Groups,OU=LAW,DC=Eu,DC=Emory,DC=Edu)))) \ cn dn memberOf
If you do, you’ll soon grow tired of having to move the cursor around a character at a time using the arrow keys. Here are the absolute minimum keys that you need to move around effectively at the command line:
- Ctl-a – moves you to the beginning of the line.
- Ctl-e – moves you to the end of the line.
- Meta-b – moves you back one word at a time.
- Meta-f – moves you forward one word at a time.
Ah… but what is this Meta key? In the Linux world, it’s usually Alt. By default, Terminal.app doesn’t have a key bound to Meta. Fix it by going into the Terminal.app preferences and checking the box labeled “Use option as meta key”.
Of course, another alternative would be to ditch these key-bindings (derived from emacs) and switch to a far-superior set of key bindings.
We’ll leave that for another day.