_____ _ _ _____ _ _ _ _ | ___| | __ _ ___| |__ | ___(_)_ __ __| | / | / | | |_ | |/ _` / __| '_ \| |_ | | '_ \ / _` | | | | | | _| | | (_| \__ \ | | | _| | | | | | (_| | | |_| | |_| |_|\__,_|___/_| |_|_| |_|_| |_|\__,_| |_(_)_| © 1995 by Frank Würkner All Rights Reserved COPYRIGHT NOTE ¯¯¯¯¯¯¯¯¯¯¯¯¯¯ The program FlashFind is copyrighted © 1995 by Frank Würkner. All rights reserved. FlashFind is FREEWARE. This program may be freely distributed as long as - the executable and documentation remain unchanged and are included in the distribution - no other charge is made than to cover time and copying costs DISCLAIMER ¯¯¯¯¯¯¯¯¯¯ No warranties of any kind are made as to the functionality of this program. You are using it ENTIRELY at your own risk. SYSTEM REQUIREMENTS ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯ You need OS2.0 or higher!!! QUICK OVERVIEW ¯¯¯¯¯¯¯¯¯¯¯¯¯¯ Tired of slow text search tools which pretend to be fast? Want something real faaast? Try FlashFind. It searches through a 2.5MB text on hard disc in 20 seconds on a plain 68000er!!! For comparison c:search is about 20 times slower. FlashFind uses a highly optimised, assembler coded Boyer-Moore search algorithm. Additional speed is gained by using asynchron IO. USAGE ¯¯¯¯¯ Nearby FlashFind is pure and can be made resident. You can quit FlashFind with CTRL-C (surprise!) and skipp to the next file with CTRL-D. FlashFind has the following template: FROM/M/A,SEARCH/A,ALL/S,NUM/S,QUIET/S,P=PATTERN/S,CS=CASESENSITIVE/S, INVERT/S,NH=NOHIGHLIGHT/S,V=VERBOSE/S,BIN/S,NO=NOPREFS/S,MAXHIT/K/N FROM/M/A The textfile, directory or any valid AmigaDOS wildcard that should be searched for. SEARCH/A The text you want to find. ALL/S Also recursively search within subdirectorys. NUM/S Show line numbers before matching lines. This option does slow down search speed! QUIET/S If you search more than one file, the filename will be written first. So you always will see from which file the text came from. Set QUIET to see absolute no filenames. Filenames from files in which nothing is found are never printed independent of the QUIET switch. P=PATTERN/S Use pattern matching instead of substring search. SEARCH must be a valid AmigaDOS wildcard. Each textline is matched with your pattern. This is MUCH slower than substring search! CS=CASESENSITIVE/S By default search is case insensitive. Use this to get case sensitive search (also possible in combination with PATTERN) INVERT/S Show all lines that do not match. This option does slow down search speed! NH=NOHIGHLIGHT/S By default the text found within the line is colored. The filename of the file where the text was found is also colored. Use this switch to turn coloring off. V=VERBOSE/S Show the filename that is currently processed. This works even if you redirect the output into a file, e.g. FlashFind ram: foo all >hits BIN/S By default each file is checked first if it contains binary. If so it is silently skipped. Use this switch to force the search even within binary files. NO=NOPREFS/S FlashFind looks into the environment variable `FlashFind.prefs' to read your default options (exept FROM, SEARCH and NOPREFS). Setting NOPREFS will cause FlashFind to ignore this variable. MAXHIT/K/N Only show MAXHIT matching lines of one file. Default is to show all matching lines. EXAMPLES ¯¯¯¯¯¯¯¯ FlashFind Include:*.h ram: CTRL_C all Search `CTRL_C' within every file of ram: and every file in Include: ending with .h (both times including subdirectories). The search is case insensitive. FlashFind does also set the return code to 5 if no matching line was found. So it is easy to use within script's, e.g. FlashFind >NIL: Spool:Mail flame MAXHIT=1 IF WARN show Spool:Mail ELSE delete Spool:Mail ENDIF How can I save my default options? I want VERBOSE, NUM, ALL and MAXHIT=50. setenv FlashFind.prefs "VERBOSE NUM ALL MAXHIT=50" copy env:FlashFind.prefs envarc: HISTORY ¯¯¯¯¯¯¯ 1.0 first release 1.1 o FlashFind now first checks if the file really is a text file (but also can be forced to search all files with BIN switch) o now gives the filename where a problem appears o if an error occurs in a file FlashFind prints the error message and continues with the next file (instead of quiting as in 1.0) o line numbering possible through NUM switch. Too many asked for this :-) o INVERT switch to show all lines that do not match o VERBOSE switch to see which files are processed o MAXHIT to limit the number of matching lines o favourite options can be put into environment variable `FlashFind.prefs' o possible to use CTRL-D to skipp to next file If you have comments, suggestions, criticism, bug reports etc. send mail to Frank Würkner Georgenschwaigstr. 22 D-80807 München Germany or E-Mail: wuerkner@informatik.tu-muenchen.de