A more sophisticated sort of question to ask is, "What are the
commands for working with files?" To ask this question, type C-h
a file RET, which displays a list of all command names that
contain `file', including
so on. With each command name appears a brief description of how to use
the command, and what keys you can currently invoke it with. For
example, it would say that you can invoke
find-file by typing
C-x C-f. The a in C-h a stands for `Apropos';
C-h a runs the command
Because C-h a looks only for functions whose names contain the string which you specify, you must use ingenuity in choosing the string. If you are looking for commands for killing backwards and C-h a kill-backwards RET doesn't reveal any, don't give up. Try just kill, or just backwards, or just back. Be persistent. Also note that you can use a regular expression as the argument, for more flexibility (see section Syntax of Regular Expressions).
Here is a set of arguments to give to C-h a that covers many
classes of Emacs commands, since there are strong conventions for naming
the standard Emacs commands. By giving you a feel for the naming
conventions, this set should also serve to aid you in developing a
technique for picking
char, line, word, sentence, paragraph, region, page, sexp, list, defun, rect, buffer, frame, window, face, file, dir, register, mode, beginning, end, forward, backward, next, previous, up, down, search, goto, kill, delete, mark, insert, yank, fill, indent, case, change, set, what, list, find, view, describe, default.
To list all Lisp symbols that contain a match for a regexp, not just the ones that are defined as commands, use the command M-x apropos instead of C-h a. This command does not check key bindings by default; specify a numeric argument if you want it to check them.
super-apropos command is like
apropos except that it
searches documentation strings as well as symbol names for matches for
the specified regular expression.