3 .ds ;G \\*(;G\\f\\$1\\$3\\f\\$2
4 .if !
\a\\$4
\a\a .Af \\$2 \\$1 "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
7 .ie
\a\\$3
\a\a .ft \\$1
11 .Af "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7" "\\$8" "\\$9"
16 .aF 5 \\n(.f "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
19 .aF 5 1 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
22 .aF 1 5 "\\$1" "\\$2" "\\$3" "\\$4" "\\$5" "\\$6" "\\$7"
24 .de EX \" start example
41 find \- fastfind algorithm interface
46 void* findopen(const char* \fIpattern\fP);
47 char* findnext(void* \fIhandle\fP);
48 void findclose(void* \fIhandle\fP);
51 These routines access the data generated by the
54 The data itself is generated by a standalone program that is run daily
68 returns the next pathname that matches the pattern specified by
73 when no more pathnames match the pattern.
81 These rotuines are only as good as the
83 information which is in the system administration domain.
89 James A. Woods, \fIFast Find Algorithm\fP, Usenix ;login:, February/March, 1983, p. 8