FindFast v 1.02 3/19/92 FILES! The files "update", "find", and "changes" MUST accompany this documentation. Also, this documentation must accompany those files everywhere they go. DESCRIPTION This pair of programs is designed to search your entire hard drive(s) on occaision and make a list of all of the files, then search the list for any files you might need the location of. This procedure, while it does require a regular search of the hard drive, tells you exactly where the file or files you're interested in are. This program also works under WorkBench 2.04, unlike the utility I was using before I upgraded. INSTALLATION Put find in your path (probably your C: directory). Put update wherever you like, probably also in your path. Hang on to this file and "changes" in case you want to give the program to someone else. USING UPDATE As often as you like, run "update" to create a complete list of files on your hard drive(s). I have an event that runs a virus scanner, duplicate file scanner, update, and other utilities that take awhile to run all at 4:30 in the morning. In general, run it periodically, as often as you loose track of where a few files are. Update searches your hard drive and stores a list of all of the files and directories it finds in the file "S:FindFast.dat". Command line: update [drive] [drive] [drive] [...] Any number of drives may be listed, and they will be processed in the order you specify. You may also specify paths to other directories besides drives if you like, but remember that all subirectories of all drives you specify are searched. USING FIND Whenever you want to know the location of a file, type "find ". Find will then search the data file and report all occurrences of the file you specify. Standard AmigaDos wildcards are allowed, but character ranges and stuff like that are not. You may specify additional files on the command line if you want to search for more than one file. Command line: find [file] [file] [file] [...] Permitted wildcard characters are: ? - Substitutes any single character # - Zero or more of the following character * - Anything - equivalent to "#?" Find will show you the complete path to the file(s) it finds, starting with the directory you specified in the "update" command line. Find will return its result MUCH faster than the usual file finder utility because it only has to look in its own data file instead of searching the whole hard drive. MOVING THE DATA FILE If for some reason you wish to move the data file from "S:FindFast.dat", set the environment variable "_FindFast" to whatever file you like. In the variable, specify the entire path to the file and the filename. To set the environment variable, type: SETENV _FindFast RAM:FindFast.dat or substitute whatever you like in place of "RAM:FindFast.dat". If you put your data file in RAM, remember that it will be deleted when you reboot, so copy it to your hard drive. NOTES The wildcard searching isn't quite exactly like AmigaDos. Blame SAS. They goofed the function I used for pattern matching. It's close enough for this program, and it'll show you all of the files you're interested in. THINGS I LEARNED - OF INTEREST TO PROGRAMMERS - To save you trouble, you can't recurse immediately upon finding a directory with SAS/C 5.10's "dfind" and "dnext" functions. You have to keep a list of all of the directories and search them AFTER you've got a complete list of files in the directory. - The "dfind" function has an apparent limit of 64 bytes on the filename paramater. This means that you need to chdir to each directory before listing files. The chdir procedure is actually easier to program than trying to keep track of what directory is being examined, but I imagine it's slower. - I used the SAS/C "stpcma" function for pattern matching. It doesn't do exactly what it says it does, and it doesn't really thrill me, but I didn't want to re-write pattern matching for the program. COPYRIGHT The programs "find" and "update" and this documentation file are Copyright 1992 by Jim Scarborough. They may be freely distributed for non- commercial use. To license this program in a commercial environment, send $5 registration per copy you wish to register to the address below. Commercial users have a license to examine this software for thirty days without registering. The files "update", "find", "changes" and "FindFast.doc" must be distributed together. DISCLAIMER This program is provided as-is without warranty of any kind. It works on my hard drive without a hitch, but I can't be sure about everyone's hard drives. I will accept no liability for any damages resulting from the use of this program (not that I expect any damages). CONTACTING ME If you DO find a problem besides the pattern matching problem, please tell me so that I might fix it. Also, I'd like to hear what you think of the program in general, so feel free to send me a message or write. Modem: The Igmeister Zone BBS at (205)880-3775 and send E-mail to Wile E. Coyote. E-mail: 10@2510 on WWIVnet. Jim Scarborough @1:373/8 on Fido Net US-mail: Jim Scarborough 922 Tascosa Drive Huntsville, AL 35802-2639 This address will be valid through 4/93, and may be valid later.