Dired and `find'
================
You can select a set of files for display in a Dired buffer more
flexibly by using the `find' utility to choose the files.
To search for files with names matching a wildcard pattern use `M-x
find-name-dired'. It reads arguments DIRECTORY and PATTERN, and
chooses all the files in DIRECTORY or its subdirectories whose
individual names match PATTERN.
The files thus chosen are displayed in a Dired buffer in which the
ordinary Dired commands are available.
If you want to test the contents of files, rather than their names,
use `M-x find-grep-dired'. This command reads two minibuffer
arguments, DIRECTORY and REGEXP; it chooses all the files in DIRECTORY
or its subdirectories that contain a match for REGEXP. It works by
running the programs `find' and `grep'. See also `M-x grep-find', in
Note:Compilation. Remember to write the regular expression for
`grep', not for Emacs. (An alternative method of showing files whose
contents match a given regexp is the `% g REGEXP' command, see Note:Marks vs Flags.)
The most general command in this series is `M-x find-dired', which
lets you specify any condition that `find' can test. It takes two
minibuffer arguments, DIRECTORY and FIND-ARGS; it runs `find' in
DIRECTORY, passing FIND-ARGS to tell `find' what condition to test. To
use this command, you need to know how to use `find'.
`M-x locate' provides a similar interface to the `locate' program.
`M-x locate-with-filter' is similar, but keeps only lines matching a
given regular expression.
The format of listing produced by these commands is controlled by the
variable `find-ls-option', whose default value specifies using options
`-ld' for `ls'. If your listings are corrupted, you may need to change
the value of this variable.