home *** CD-ROM | disk | FTP | other *** search
-
-
- FFIT ver 1.4, May 21 1992 by Kai Risku
- ======================================
-
-
- This program was made to help you copy files to disks, without
- having to think about how to group the files so they will take up
- the least number of disks. FFIT checks the size of the disks you are
- going to copy to, and then groups the files so they will take up the
- least number of disks. After this, the program will copy the files
- to the disks prompting you for each disk.
-
- Several options are available to modify the way FFIT works. You can
- specify alphabetical sorting, no grouping (sequential copying), test
- mode (just print the filenames, do not copy) and more...
-
- Please note that the sorting may take a while, so be patient when
- using this program. Also note that since this program copies
- everything to the root of the target disks, there is a limit to how
- many files can be placed there. As an example can be said that on a
- 1.44 meg diskette you can have 224 files in the root directory.
-
-
- Ok, how do I use this wonderful program..
- =========================================
-
- Syntax: FFIT [options] [filespecs..] [@listfile] drive:
-
- The target drive must always be the last argument and it must be a:
- or b:, all other arguments may appear in any order. An argument
- starting with '-' or '/' is interpreted as an option. The filespecs
- can be a directory or filenames with or without wildcards.
- You can also put all desired filespecs (each on a separate line)
- in a special listfile and specify '@filename' as the filespec.
-
- The following options can be used:
-
- -a add; use the space available on the disk. If this
- option is NOT specified, the program will use the
- whole capacity of the disk, and thus require totally
- empty disks (non-empty disks will be erased after
- prompting). If the -a option is given, the program
- cannot say how many disks will be required, as this
- depends on the space available. Without this option
- the program will say how many disks is needed before
- the copying begins.
-
- -c copy only files with the archive bits set. The archive
- bit will be reset after copying.
-
- -f force; no prompting for permission will be done.
- Normally the program will ask when you are about
- to erase a disk or if there are read-only files that
- are about to be erased, but with this option given
- yes will be assumed without asking.
-
- -m move; after a disk has been successfully copied, the
- source files will be deleted. Read-only files must be
- confirmed unless -f is given.
-
- -n no grouping; the files will be copied in the same order
- as specified, changing disk when the next file won't fit.
-
- -s sort alphabetical; the files will be copied in
- alphabetical order on the disks.
-
- -t test; do not write or delete anything, just simulate
- and print all texts as it would normally appear.
-
- -u uppercase; print all filenames in uppercase.
-
- -v size fit files to the specified volume size. The numeric
- argument can be suffixed with 'k' or 'M', meaning
- kilo (times 1024) or Mega (times 1024*1024).
- If the specified size is negative, that much free
- space will be left on the disks.
-
- Options can be combined, and several options can also be specified
- after the same '-' or '/', e.g. /musa is totally legal.
-
- You can specify as many filenames you wish, and they may contain
- wildcards. If you want to copy a whole directory, you can simply
- specify the name of the directory (no wildcards allowed if
- specifying only a directory name). Files that are larger than the
- target disk, as well as non-existent files, will be skipped.
-
-
- Some useful examples:
- =====================
-
- FFIT -t \misc\texts \temp\*.doc b:
-
- This test-fits all files in the directory \misc\texts and all
- files matching \temp\*.doc to the drive b:. Nothing will be
- copied, but the program will tell you how many disks you are
- going to need as well as which files are put on which disks.
-
- FFIT -fms . a:
-
- All files in the current directory will be fitted to a:.
- The files will be copied in alphabetical order (-s), and after
- each disk has been successfully copied, the source files will
- be deleted (-m) without asking for permission even if some
- files are read-only (-f).
- NOTE! Because the option -a was NOT specified, the target disks
- must be empty, and FFIT will ask you for permission to do so
- if it finds anything on the disks.
-
- FFIT -a -n -u c:\foo\*.arj b:
-
- The matching files are added (-a) to the disk(s) in drive b:.
- No files already existing on the disks will be removed!
- Because of this, FFIT cannot know in advance how many disks
- will be needed to copy all files. You can use the test option
- (-t) to achieve this. Files are copied in the same order as
- specified (-n) and all filenames are printed in uppercase (-u).
-
- FFIT -cv 720k c:\backups\*.zip a:
-
- The matching files whose archive bits are set (-c) will be fitted
- to a: copying no more than 720 Kb to each disk (-v 720k).
- After each file has been copied, its archive bit will be reset.
-
- FFIT -a -v -10000 foo.* a:
-
- The matching files will be added to the disk(s) in drive a:
- leaving at least 10000 bytes of free space on each disk.
-
-
- As you may have noticed, there are many options and they can be freely
- combined to obtain the desired result. If you think you need yet another
- option which I haven't so far implemented, please tell me about it!
-
-
- Revision history
- ================
-
- Version 1.4: Possibility to shell to dos. Listfiles implemented.
- Added progress indicators while copying files.
- Added options 'c' and 'v'. Name changed from
- 'fit' to 'ffit' because there already existed a
- program named 'fit'.
- Version 1.3: Possibility to break (cont, accept or quit) during
- fit. Fixed 'bytes left'-bug. Added code selfcheck.
- Version 1.2: Added add and move option and printing of bytes
- left on each diskette after copying. Increased stack
- size, because the program could sometimes crash
- when the algorithm recursed deep enough.
- Version 1.1: Added alphabetical sorting.
- Version 1.0: Initial release of program.
-
-
-
- #include <std_disclaimer.h>:
- ============================
-
- This program is freely distributable. You can share it with all your
- friends as long as you don't request money for it, or modify this
- program in any way without permission from the author. The author
- of this program will under no circumstances be held responsible for
- whatever may happen when you use this program.
-
- If you have any questions, ideas, suggestions for improvements or if
- you are interested in the source then feel free to contact me...
-
- A nice postcard would be appreciated!
-
-
- Snailmail: Kai Risku Email (internet): Kai.Risku@hut.fi
- Kronvik
- 65410 Sundom
- Finland
-
-