OneDIR Pro 2.00 (Copyright 1996 by Rick Proft) Last Updated: 5/17/96 *** CONTENTS *** INTRODUCTION FEATURES USAGE SOME THOUGHTS UPCOMING ENHANCEMENTS CHANGE HISTORY *** INTRODUCTION *** Thank you for downloading OneDIR Pro. OneDIR Pro is a directory program that offers all the features of DOS's command, plus much more. This file contains additional information about OneDIR Pro including what options are available, sample OneDIR Pro statements, how to register the software, and changes that have been made to the product over its lifespan. OneDIR Pro is very powerful and, given a chance, should prove to be worth its low, low registration fee of $5.00 (see below). You may copy and distribute this version freely provided that it is distributed only in its original, unmodified state, and with its accompanying files: 1DIRCUST.EXE, 1DIR.TXT, REGISTER.TXT, and FILEID.DIZ. Many long hours have gone into developing OneDIR Pro and as a result the program is being distributed as shareware. If you like the program, PLEASE register it by sending as little as $5.00 to the following address. Your support really does make a difference. In fact, if it hadn't been for everyone who supported the previous release, there probably would not have been a release 2.0. The address is: Richard Proft P.O. Box 681142 San Antonio, TX 78268 See REGISTER.TXT for registration/licensing details. Regardless of whether you register, product feedback is very welcome! Please send your ideas, comments, and any bugs you find to: Rick Proft 73460.3033@CompuServe.COM (Internet) 73460,3033 (CompuServe) Want the LATEST VERSION of OneDIR Pro? Check out the OneDIR Pro HOMEPAGE! http://www.crl.com/~scrappy/OneDIR Special thanks go out to Dave, Paul, and Linda for all of their ideas, help, and support. OneDIR Pro was originally inspired by the 1987 version of HotDIR 2.0 by Tony Overfield and Robert Woeger. OneDIR Pro is written entirely in Microsoft Visual C++ 1.0. *** FEATURES *** o Multiple file patterns can be used (i.e. 1DIR *C,*.H) (New) o Robust pattern matching capabilities which exceed DOS's (New) o File patterns can be excluded from directory listings o Files can be filtered by attribute settings, file sizes, and dates ranges. o OneDIR uses colors to denote common file types based on extension. (New) o Robust support for Windows 95 long file names. (New) o FULL customization support including custom colors, extensions, display styles, and default settings. (New) o Supports 6 different column output modes including autosizing. (New) o Automatically detects whether running under Windows 95 or normal DOS and defaults display settings appropriately. o OneDIR can generate batch file programs which allow users to quickly perform operations such as renaming, copying, and write-protecting on files listed by 1DIR Pro. o Output can be set to be redirectable (to printer or file) o OneDIR Pro can display the size of directories (size includes all files and subdirectories). o Subdirectories can be included during directory searches. o All normal DIR command (DOS 5.0) behavior is supported. o Automatically detects and supports how many rows are being used within DOS (i.e. 25x80, 50x80, etc...) o Supports files sizes up to 4 gigabytes. o Shareware version of program is fully functional. o And much, much more... *** USAGE *** 1DIR [drive:][path][file pattern,file pattern,...] [options] [drive:][path] Specified drive and/or directory to list. [file pattern,file pattern, ...] One to many file patterns separated by commas without spaces. Examples: 1DIR show current directory 1DIR C:\FOO\*.C show all *.C files in C:\FOO 1DIR C:\FOO\*.CPP,*.H show all *.CPP and *.H files [options] /![file pattern,file pattern, ...] Patterns to One to many file patterns separated by commas without exclude spaces. Example: /!*.EXE,*.COM excludes executables. /A[filters] Filter files by [A]ttribute criteria. attribute D Directories R Read-only files filters H Hidden files A Files ready for archiving S System files - Prefix meaning "not" /B["template"] Generate [B]atch command file (default is 1DIRTEMP.BAT). "template" Template is used with filenames to create the command lines. ^ may be used for file name substitution position. Examples: /B"ATTRIB +R" generates ATTRIB +R C:\FOO\SAMPLE.TXT /B"COPY ^ *.BU" generates COPY C:\FOO\SAMPLE.TXT *.BU Use 1DIRBATCH environment variable to specify file name & path. /C [C]lear the screen first. /D Display [D]irectory sizes. /D[filter] Filter files by [D]ate criteria. date MMDDYY,MMDDYY for inclusive date range or filter opMMDDYY, where op is: GT Greater Than GE Greater than or Equal EQ EQual LT Less Than LE Less than or Equal /E Do NOT show inverted background for r[E]ad only files. /F Display [F]ull file sizes where possible. /H Display [H]elp. /I Display registration and product [I]nformation. /J Display list of files packaged with this product version. /L Show file names in Lower Case. /LR Left to Right ordering. [LR] /N Use A[N]SI color controls. /O[Sort Order] List by files in sorted [O]rder. sort order N By name (alphabetic) S By size (smallest first) E By extension(alphabetic) D By date (oldest first) G Group directories first - Prefix to reverse order /P [P]ause support off. /R [R]edirectable display (for printing). /S[A] Display files in specified directory and all [S]ubdirectories Use /SA to include empty directory paths in output /S[filter] Filter files by [S]ize criteria. size op#####[K or M], where op is: filter GT Greater Than GE Greater than or Equal EQ EQual LT Less Than LE Less than or Equal /X Use e[X]tended color support. /Z Pause before ending program. (useful under OS/2) /# Where # is 0, 1, 2, 3, 4, or 6 0 Automatically show maximum nr of columns. Each column shows the file size and name (default under Windows 95). 1 column showing name, size, attributes, date/time (w/secs), and the long file name (if applicable). 2 columns showing name, size, attributes, and date/time 3 columns showing name, size, and attributes 4 columns showing name and size (default under DOS) 6 columns showing name only The following options are included to support Windows 95/VFAT file systems: /WA Always show long file names when /1 option is in use /WC Filter files based on file pattern case. /WD Force "down-level" DOS calls (do not use VFAT). /W[Name Type] Specify which file names to match against, where [Name Type] is: S 8.3 short names L VFAT long names B Use Both (default) Switches may be preset in the 1DIRCMD environment variable. Override preset switches by suffixing any switch with an O. For example, /DO. *** SOME THOUGHTS *** * As long as OneDIR Pro is always distributed in its unmodified form, feel free to rename 1DIR.EXE to something quicker to type (such as D.EXE). * If you don't like the defaults options, remember that the 1DIRCMD environment variable can be used to assign new defaults. For example, if you add 'SET 1DIRCMD=/C' to your AUTOEXEC.BAT file then OneDIR will clear the screen every time you use it. * Don't like the colors? Want to add new extensions? Try 1DIRCUST which COMES with this release! 1DIRCUST will allow you to customize the extensions 1DIR understands. It will also allow you to change the display colors and styles. To use 1DIRCUST, simply execute 1DIRCUST , where is your 1DIR executable. * Try 1DIR /D /OS sometime on your root directory. The /D option will have OneDIR calculate the true size of all your directories (it adds up all the file sizes in each and every subdirectory). The /OS option sorts the OneDIR listing by size. The two options together make it very, very easy to see where all your space is being used up. * If you want to route OneDIR output to a printer, use the /R option. /R will drop the color and pause support making the output redirectable. Use the /T option to have OneDIR display its runtime and date. * Why do some of my files show up with a BLUE background? By default read only files show up with a blue background. This can be disabled with the /B option (use the 1DIRCMD environment variable to permanently disable). * How can I get the exact file sizes and totals down to the last byte? The /F option will have OneDIR display entire file sizes when possible. The /1 option (1 column) will provide the most space; however, /2 should also be fine. * Can I have OneDIR show files with just certain extensions? SURE! For example, try '1DIR *.TXT,*.LOG' to see all the files with .TXT and .LOG extensions. * Can I have OneDIR exclude files with certain extensions? SURE! For example, try '1DIR !*.EXE,*.COM' to see all of the files in the current directory EXCEPT executables and command files. * Want to search subdirectories too??? Use the /S option. For example, to find all of the files in the current directory and its subdirectories which are either .BMP or .ICO files, try '1DIR *.BMP,*.ICO /S' * Sooo your a C programmer and want to see .H, .C, and .CPP files? Try the /X option (see below). * Can you show some examples of the 1DIR attribute, date, and size filtering? Examples: Find all hidden files on C: drive 1DIR C:\ /AH /S Find files that have been modified between May 1, 1995 and June 15, 1995 1DIR /D050195,060195 Find all files in C:\WINDOWS that have been modified after June 1, 1995 1DIR C:\WINDOWS /DGT060195 Find all files consuming more that 1 meg on C: drive 1DIR C:\ /SGT1M Find all files consuming less than 10K in current directory 1DIR /SLT10K Find all files with a size of 15 bytes in the current directory 1DIR /SEQ15 * Can you show some examples of the 1DIR batch file generation option? Examples: Generate a batch file which marks all *.ZIP files as read only on C: drive 1DIR /B"ATTRIB +R" C:\ *.ZIP /S Generate a batch file that copies all bitmaps and icons from the C: drive to D:\GRAPHICS 1DIR /B"COPY ^ D:\GRAPHICS" C:\*.BMP,*.ICO /S * Want to run under OS/2, but once 1DIR finishes the DOS box goes away? Use the /Z option which will delay the termination of the program until you tap the enter key. * The help for the /X option just says use extended color support. What's that??? The /X option is to show additional file extensions that many users may not care about. In particular: EXTENSION/COLOR *** Additional text/source Files *** .C -- Bright Yellow .CPP .PAS .BAS .H .RC .MAK .HTM *** Graphic files... *** .BMP -- Cyan .GIF .JPG .TIF .ICO *** "Multimedia" files *** .WAV -- Green .MID .MOV .MPG .AVI .FLI .AU *** C64 emulator files... *** .T64 -- Brown .D64 .P00 *** SOME WINDOWS 95 THOUGHTS *** * Windows 95 long file names are displayed with the /0 and /1 options. /0 is the default under Windows 95. With /0 the number of columns displayed is automatically selected based on the longest file name in the directory. With the /1 option, both the short and long file name are displayed. For "down-level" DOS, /4 is the default. The /2, /3, /4, and /6 options ALWAYS show the 8.3 short file name. * Pattern matching -- how does that work now that there can be two different file names per file? By default, 1DIR 2.0 will look at both the long and short file name when performing pattern matching. By default, pattern matching is NOT case sensitive. However, you have complete control over how pattern matching is performed: /WC will make pattern matching case sensitive for long file names. /WS will pattern match against only the short file names /WL will pattern match against only the long file names /WB will pattern match against both (default) *** Potential enhancements *** Depending on how successful this release is, I am considering making the following enhancements: * Support for file systems which exceed 4 gig. * Development of a Windows 95 version of 1DIR (1DIRWIN?) which sports a full fledged user interface. If a Windows version is developed, it goes without saying that life-time registered 1DIR DOS users will also be registered for the Windows version. * Enhanced User Interface support for customization. * Ability to DIR .ZIP files * A better, more organized version of this document (1dir.txt). * Any other good ideas that come up. *** CHANGE HISTORY *** Version/Changes * 2.00 (December 95 - May 96) - Fixed bug with redirected output with control chars screwing up printf. - Add Win95 long file name support /WA option - always show long names /WC option - match case /W[S,L,B] option - which file names to match against /WV option - undocumented option to skip DOS version checking - Remove /W option mapping to /6 option - Add /J option to show files packaged with product - Compensate for Microsoft bug which forced DOS Windows to fullscreen when initially running 1DIR under Win95 - Add BREAK ON command to generated batch command files - Change batch file creation to occur after the directory is read in instead of before. - Add HTM as a known /X extension - Add modificationCode check - Develop 1DIRCUST (1.0) to distribute with 2.0 release - Convert majority of OneDIR from C to C++. Conversion resulted in improved performance and the correction of a bug which allowed 1DIR to miss hidden directories when using the /s option. * 1.12 (April 95 - June 95) - Better pattern matching. 'C*H?1' type support. - /Z option pauses at end of execution for OS/2 usage - Add better error messages for /5,/6,/8,/9. Better sort order error msg. - Change copyright notice to go to right - Remove display runtime option, instead always display - Updated duplicate & Link List insert logic to not pass in NULL pointer (bug was harmless unless code ported to different compiler) - Added /! option to support pattern matching exlcusion. Enhanced file pattern logic to only make one pass per file, instead of a pass per pattern. - NOTE: The 1.12 version was not publicly released. * 1.10 (March 95) - Clean up some minor typos. - Replace /D main display reminder with one for /H (for Help). - Prep documentation for first internet release. - Switch from 0.XX release format to 1.xx format to indicate actual "live" release. Start with 1.10 (1.0 release was really the December 1994 version, but I decided to wait until a distribution outside of my friends to go to the 1.xx release numbering). * 0.57 (March 95) - Added ability to filter by file attributes (/A option) - Added ability to filter by file size (/S[filter] option) - Added ability to filter by file dates (/D[filter] option) - Change former /A (ANSI colors) option to /N - Added ability to generate batch file templates (/B option). Added optional support for 1DIRBATCH environment var - Enhanced to treat 'X*' as 'X*.*' - Added /W option for compatibility with DIR command - Enhanced /S (subdir search) option to display total files found and directories scanned. Also modified option to not display (as default) empty directories. Added /SA option to see empty directories. - Enhanced program to display useful and informative messages when invalid parameters are passed in (previous version just displayed help) - Corrected bug which did not reset color of DOS prompt when the ANSI driver is not loaded - Added [P] option on page pausing menu. [P] option turns pausing off during output. - Internally added error processing support for malloc failures (i.e. memory allocation problems) - Internally centralized extensions, colors, and frame controls in order to allow a touch up program to allow users to customize program - Renamed product from DIR++ to OneDIR Pro. Included changing DPPCMD env variable to 1DIRCMD. - Program converted from freeware to shareware. * 0.56 (February 95) - Started modifying program colors and layout to provide a more distinctive look and feel. * 0.55 (February 95) - Fix dirsize (/D) bug introduced with 0.54. Added /S option to search subdirectories. Added /T option to show program run-time. Internally generalized link list routines along with splitting up program header file into several module header files. Changed pattern delimiter from semicolon to comma. * 0.54 (February 95) - Added support for multiple file patterns (example: DPP *.H;*.C;*.TXT). Added DPPREAD.ME file. * 0.53 (February 95) - Changed "Meg" label to "MB". Added better scrolling support. Added Q option to quit from scroll. Internally centralized handling of product name and version. * 0.52 (December 94) - First complete working version.