Dec 282017
 
Port of Unix FIND to MS DOS. MS/Turbo/MIX supported, full C source code is included.
File UFIND402.ZIP from The Programmer’s Corner in
Category File Managers
Port of Unix FIND to MS DOS. MS/Turbo/MIX supported, full C source code is included.
File Name File Size Zip Size Zip Type
AMATCH.C 2054 824 deflated
COMPAT.C 687 252 deflated
COPYMOVE.C 6090 1959 deflated
COPYMOVE.H 120 96 deflated
CRC.C 4012 1840 deflated
ENSURE.C 976 452 deflated
EXECUTE.C 2006 718 deflated
EXECUTE.H 88 69 deflated
GETARGS.C 10823 2789 deflated
MAKEFILE.MSC 865 295 deflated
MAKEFILE.TC 922 309 deflated
MCUFIND.RSP 167 96 deflated
QUEUE.C 1144 424 deflated
QUEUE.H 314 185 deflated
README 839 452 deflated
README.1ST 5473 2466 deflated
ROOTPATH.C 3271 1139 deflated
ROOTPATH.H 46 38 deflated
TCUFIND.RSP 197 112 deflated
UFIND.C 18690 5771 deflated
UFIND.DOC 22541 6525 deflated
UFIND.EXE 24118 14468 deflated
UFIND.H 4774 1351 deflated
UFIND.PRJ 197 109 deflated
UFIND402.DOC 59717 15377 deflated
USAGE.C 1021 473 deflated

Download File UFIND402.ZIP Here

Contents of the README file


Find - Copyright (C) 1988, Russell Nelson

Copying for all purposes permitted so long as this copyright notice is
retained.

Manifest:

amatch.c *Handles wildcard matching of filenames.
cp.c *Handles copying of files.
crc.c *Handles crc of file.
ensure.c Ensure that a subdirectory exists by mkdir'ing if needed.
find.c Bulk of the code.
find.doc Documentation.
find.exe Executable.
makefile Makefile.
readme Readme.
rootpath.c *Converts a relative pathname into an absolute pathname.
rootpath.h Header for ...

*All C source files other than find.c are also useful programs in their own
right. See the makefile.


Find -find files according to a given criteria.

Subsumes 'copy', 'xcopy', 'mv', 'dir', 'ls', 'whereis', and a whole bunch
of other programs.



Contents of the README.1ST file


Find - Copyright (C) 1988, Russell Nelson

Copying for all purposes permitted so long as this copyright notice is
retained.

Manifest:

amatch.c *Handles wildcard matching of filenames.
cp.c *Handles copying of files.
crc.c *Handles crc of file.
ensure.c Ensure that a subdirectory exists by mkdir'ing if needed.
find.c Bulk of the code.
find.doc Documentation.
find.exe Executable.
makefile Makefile.
readme Readme.
rootpath.c *Converts a relative pathname into an absolute pathname.
rootpath.h Header for ...

*All C source files other than find.c are also useful programs in their own
right. See the makefile.


Find -find files according to a given criteria.

Subsumes 'copy', 'xcopy', 'mv', 'dir', 'ls', 'whereis', and a whole bunch
of other programs.

UFIND.EXE
A Multifunction Disk Utility

UFIND (for Unix-like FIND) is a program derived from a program called
FINDNEW, Copyright (C) 1988 by Russell Nelson. FINDNEW was an
implementation of a Unix-like FIND in Turbo C for the PC class systems.
Since an earlier implementation of this facility, called SEARCH1, has been
among my most useful utilities despite numerous bugs, I decided to "adopt"
FINDNEW as a program to continue developing to suit my needs.
Unfortunately, since the original intent was to retain the program for my
private use, no record of the modifications to convert FINDNEW into UFIND
were kept. A number of errors in FINDNEW were corrected before any
"enhancements" were made. The source for FINDNEW, which was in a
reasonably "standard" C format, was converted to my own, somewhat
idiosyncratic form using mixed case for all variable names longer than 1
character that are not defined constants, runtime library function names,
or reserved words.

All functions of the original FINDNEW have been retained and a few new
functions have been added. The most prominent of the new features are the
addition of a pair of dates to the file selection criteria: -SI selects all
files with creation/modification dates equal to or more recent than the
specified date (default "today" from the system clock) and -BE selects all
files with creation/modification dates prior to the specified date (default
"today"). The -EXEC (EXECUTE) function was also changed to use the C
system() function, which evoked another copy of COMMAND.COM so that .BAT
files may be used. Also, several substitutable parameters for the file
name, including full path name, full file name (name and extension), just
the name, and just the extension, have been provided.

Since I seem to do a great deal of movement of subdirectories within the
hierarchy on my disks, the current work is in extending and modifying the
-MV (MOVE) and -CP (COPY) facilities.

As a final warning to Unix "purists", UFIND is NOT intended to be a replica
of the Unix FIND. It is meant to be an MS-DOS facility that suits my needs
in handling an MS-DOS file hierarchy. I may, later, port it back to Unix
if appears that it might be useful in that environment. For people who
find UFIND useful and wish to suggest modifications or report bugs, I can
be contacted in a variety of ways:

On CompuServ: 75410,543
On GEnie: DON-WILL

On the following Phoenix, AZ area BBS systems:

Bob's Answering Machine [OPUS]
(602) 242-3158 1200/2400 bps
Radioactive West [PCBOARD]
(602) 873-0810 1200/2400 bps
The Tool Shop BBS [PCBOARD]
(602) 279-2673 1200/2400/9600 bps
(Good luck trying! VERY BUSY!)
Technoids Anonymous [PCBOARD]
(602) 899-4876 300/1200/2400 bps

All of the BBS systems can be reached through PC Pursuit and I try to log
on to each of them (except The Tool Shop which is WAY too busy!) at least
once a day as "Don Williams". I log on to GEnie and CompuServ at least
once a week.


UFIND Version 4.0.0

The major change in this version of UFIND is the provision for compilation
with Microsoft C 5.1, Turbo C 2.0 [probably still works with 1.5], or Mix
Power C 1.1.2 or higher. Since some rather radical changes in the source
code were necessary, I felt that a major revision number was called for. I
am not yet happy with the conditional compilation in this version,
particularly since I intend to extend it to cover WatCom C 6.5, and Zortech
C also. There will probably be another revision within a few weeks to
handle these other compilers.

A ".PRJ" file has been include for compilation with the Integrated
Environment version of Turbo C [TC] and this same file is used with Mix
Power C. For the command line version of Turbo C [TCC] and for Microsoft
C, MAKE files have been included - MAKEFILE.TC for Turbo C and MAKEFILE.MSC
for Microsoft. Each MAKE file is intended for use with the MAKE supplied
with the corresponding compiler. For Turbo C and Microsoft C, LINK
response files that are used by the MAKE files have been included -
TCUFIND.RSP for Turbo C and MSUFIND.RSP for Microsoft C.

To compile with Mix Power C, you will have to specify a macro on the
command line:

pc/w/e -d__POWERC__ ufind

There are 2 leading and 2 trailing '_'s on the macro. Mix Power C does not
appear to have a predefined macro that identifies the compiler and neither
does WatCom C 6.5. I used '__POWERC__' because that is the macro that Mike
Smedley used in his CXL library for Turbo C, Microsoft C, and Power C and I
would like to be consistent with such an excellent product!


Version 4.0.1

This version is a maintenance release to fix the incorrect handling of a
sinlge character parameter for the -attr, -^attr, -attr+, and -attr-
options.


Version 4.0.1

This version is another maintenance release to fix case sensitivity in the
file specification parameters.



 December 28, 2017  Add comments

Leave a Reply