Memorizing *nix command line arguments
Using bash_completion is one way of not having to remember the precise syntax of program arguments.
> svn [tab][tab]--help checkout delete lock pdel propget revert--version ci diff log pedit proplist rm-h cleanup export ls pget propset statusadd co help merge plist pset switchannotate commit import mkdir praise remove unlockblame copy info move propdel rename updatecat cp list mv propedit resolved
If I don't use a command regularly enough to remember what I want, I tend to just use --help
or the man pages when I need to.
Or, if I'm lucky, I use CTRL+R and let bash's history search find when I last used it.
Eventually you just remember them, well the set that you use anyway. I used to maintain a README in my home directory when I was starting out but that disappeared many years ago.
One useful command is man -k
which you pass a word to and it will return a list of all commands whose man page summary contains that word.