home *** CD-ROM | disk | FTP | other *** search
/ Power CD-ROM!! 10 / PCD10.ISO / dos / fill412 / fill.doc < prev    next >
Text File  |  1994-12-13  |  18KB  |  361 lines

  1. FILL.DOC
  2. 12/14/94
  3.  
  4. The FILL program is designed to help you move or copy files off a hard disk
  5. while reducing the amount of wasted space on the destination disks.  Internally,
  6. it does this by sorting the file names so the largest files are moved/copied
  7. first.  It then moves or copies whatever files can fit on the floppy, skipping
  8. any that can't.  Features:
  9.  
  10.   * Can either move or copy the files to the resulting location
  11.   * Can go onto to multiple diskettes as desired, beeping if desired when
  12.     the next disk is expected
  13.   * Can move the files in file name order or any of standard ordering
  14.     categories
  15.   * Can be used to split up files which are too big to fit on a single disk
  16.   * Can create a status/transaction file for you, showing what was copied/moved
  17.   * Can label the output diskette, providing some patterns like sequence numbers
  18.     and dates which it will fill in for you
  19.   * Some times useful for network transfers where standard MOVE command doesn't
  20.     always work
  21.   * Can review and delete if desired any files which are already in the
  22.     output destination (e.g. already on the output diskette)
  23.   * Can reformat the whole disk if files are going to drive A or B
  24.  
  25. Limits:
  26.   * Routine can only process the first 500 files in a given subdirectory.  It
  27.     ignores the rest of them.
  28.   * Routine can only review for deletion the first 200 files in the output
  29.     location.
  30.   * Routine does not provide any cool write-error recovery.  If it finds a DOS
  31.     error on the output drive, it just stops.
  32.   * Routine will not format the output diskette for you.
  33.   * Routine's continual testing for new diskette (/CONTINUAL) only works if the
  34.     diskette was formatted using DOS 4.0 or later.  That's the version that
  35.     puts volume sequence numbers on the diskettes.  One way to insure this if
  36.     you're using the newer versions of DOS is to do a quick-reformat of your
  37.     floppies whenever you'd normally do a DEL A:*.*.  I do this with a QDR.BAT
  38.     command that has the following:
  39.  
  40.         FORMAT %1 /Q /U /V:Bruce
  41.  
  42.     I then say "QDR A:" or "QDR B:".  It invokes an unconditional quick format
  43.     and applies a volume label on the diskette (to avoid the prompt).  If the
  44.     diskette does not have a sequence number, DOS tells you it can't be
  45.     quick-formatted and asks if it can do the full format instead.
  46.  
  47.  
  48.  
  49. The FILL.INI file:
  50.  
  51. FILL will read a FILL.INI file if one is found.  (You can specify a different
  52. file name if desired.) The file is an ASCII text file that can be created
  53. maintained by hand.  The file can consist or one or more command line
  54. parameters (only those that begin with a "/"), one statement per line.
  55.  
  56. The file can also contain comments which are blank lines or any line beginning
  57. with:
  58.         ;    (semi-colon)
  59.         :    (colon)
  60.         '    (quote)
  61.  
  62. FILL looks for the initialization file in your default subdirectory first.  It
  63. then searches for it in the subdirectory where the executable was and then goes
  64. through your DOS path.
  65.  
  66. Passing in "/-I" or "/INULL" skips loading the INI file.  This saves some
  67. execution time as the program does not need to search your path for the file.
  68.  
  69.  
  70. CONFIGWS.EXE:
  71.  
  72. In addition to using the FILL.INI file, you can permanently change some defaults
  73. within FILL.EXE by using the CONFIGWS.EXE program.  CONFIGWS.EXE is not included
  74. in the FILL distribution package but previous versions can typically be used
  75. with FILL if desired.  (The same CONFIGWS.EXE program can be used to path a
  76. number of Wayne Software programs.) If CONFIGWS can't patch the executable, it
  77. will notify you of this before altering anything.
  78.  
  79. CONFIGWS.EXE allows you to set the following defaults:
  80.  
  81.         Output dest:    /TO A: or /TO B:
  82.         Noise:          /BEEP or /-BEEP
  83.         Confirm each:   /PROMPT or /-PROMPT
  84.         Clear dest:     /WIPE or /-WIPE
  85.         Output exists:  /OVERASK, /OVERWRITE, /-OVERWRITE, or /OVERSKIP
  86.         Copy order:     /ON, /O-N, /OS, /O-S, /OD, /O-D
  87.         Move or copy:   /MOVE or /COPY
  88.         Multi disks:    /MULTI or /SINGLE
  89.  
  90. When setting options, the program will process defaults in the following order:
  91.   (1) CONFIGWS.EXE-settable settings
  92.   (2) FILL.INI settings
  93.   (3) command-line settings
  94.  
  95. The *last* settings encountered win.
  96.  
  97.  
  98.  
  99. Syntax:
  100.  
  101.     FILL [ source-filespec ] [ [ /TO ] dest-drive: | [ /TO ] dest-drive:\path\ ]
  102.       [ /MOVE | /COPY ] [ /PROMPT | /-PROMPT ] [ /Iinitfile | /-I ]
  103.       [ /OVERWRITE | /-OVERWRITE | /OVERSKIP | /OVERASK ]
  104.       [ /Ox | /O-x ] [ /Xfilespec ]... [ /WIPE | /-WIPE ] [ /MULTI | /SINGLE ]
  105.       [ /SPLIT ] [ /LABEL=label [ /START=n ] ] [ /Fstatfile [ /S+ | /S- | S* ]
  106.       [ /CONTINUAL ] [ /BEEP | /-BEEP ] [ /FAKE ] [ /Q ] [ /? ]
  107.  
  108. where:
  109.  
  110. "source-filespec" is the file specification for what you want to move.  You can
  111. specify a drive and path and file wildcards if necessary (e.g.  "C:\TEMP\*.BAT")
  112. but otherwise it defaults to your default drive and directory and takes "*.*".
  113. Note that the program cannot handle any request for more than 500 files at a
  114. time.
  115.  
  116. "dest-drive:" or "dest-drive:\path" (or "/TO dest-drive:" or "/TO
  117. dest-drive:\path") tells the routine what drive or path to move the files to.
  118. In many cases, the routine doesn't really care whether the source specification
  119. precedes or follows the destination specification.  If either parameter ends
  120. with a colon (e.g. "A:") or slash (e.g. "C:\QB45\"), the routine will presume
  121. that's the destination specification and the other one must be the source
  122. specification.  If either parameter contains a wildcard, the routine will
  123. presume that's the source specification and the other one must be the
  124. destination specification.  So "FILL A: *.BAS" is the same as "FILL *.BAS A:".
  125. The default destination drive (dest-drive:, not dest-drive:\path) can be set by
  126. using the CONFIGWS.EXE program.  The original default is "A:" (or "/TO A:").
  127.  
  128. "/MOVE" says to move the files instead of copying them.  The default value for
  129. this option can be set by using the CONFIGWS.EXE program.  The original default
  130. is "/MOVE".
  131.  
  132. "/COPY" says to copy the files instead of moving them.  The default value for
  133. this option can be set by using the CONFIGWS.EXE program.  The original default
  134. is "/MOVE".
  135.  
  136. "/PROMPT" says to prompt for each filename before moving it.  The default value
  137. for this option can be set by using the CONFIGWS.EXE program.  The original
  138. default is "/-PROMPT".
  139.  
  140. "/-PROMPT" says to not prompt for each file.  The default value for this option
  141. can be set by using the CONFIGWS.EXE program.  The original default is
  142. "/-PROMPT".
  143.  
  144.  
  145. "/Iinitfile" says to read an initialization file with the file name "initfile".
  146. The file specification *must* contain a period.  If no drive or path information
  147. is specified, the program will search for initfile beginning in your default
  148. subdirectory and then going throughout your DOS path.  The use of an
  149. initialization file is optional.  Initially defaults to "/IFILL.INI".
  150.  
  151. "/-I" (or "/INULL") says to skip loading the initialization file.
  152.  
  153. "/OVERWRITE" says to overwrite same-named files in the destination path.  The
  154. default value for this option can be set by using the CONFIGWS.EXE program.  The
  155. original default is "/OVERSKIP".
  156.  
  157. "/-OVERWRITE" says to abort if any same-named files are found in the destination
  158. path.  The default value for this option can be set by using the CONFIGWS.EXE
  159. program.  The original default is "/OVERSKIP".
  160.  
  161. "/OVERSKIP" says to skip any file that already exists in the destination path.
  162. The counts aren't accurate in this case.  The default value for this option can
  163. be set by using the CONFIGWS.EXE program.  The original default is "/OVERSKIP".
  164.  
  165. "/OVERASK" says to prompt if same-named files exist in the destination
  166. directory.  The default value for this option can be set by using the
  167. CONFIGWS.EXE program.  The original default is "/OVERSKIP".
  168.  
  169. "/Ox" and "/O-x" allow you to specify the copy order for the files.  "x" can be
  170. one of the following:
  171.  
  172.         N = file name
  173.         D = file date and time
  174.         S = file size
  175.  
  176. If you precede the "x" with a dash ("-"), the sort will be done in reverse
  177. order.  Note that this parameter does not determine which files are copied; it
  178. only determines what order they are actually copied.  Since the order that the
  179. file tends to show up in a DOS DIR listing is based on creation order, this
  180. sequence may be relevant to how the files ultimately show up.  The default value
  181. for this option can be set by using the CONFIGWS.EXE program.  The original
  182. default is "/ON".
  183.  
  184. "/Xfilespec" says to exclude certain filespecs from being moved.  You can
  185. specify up to 10 exclusion parameters but each must have their own /Xfilespec
  186. statement.  For example, to move all files except those with a BAS extension,
  187. you could say "FILL /X*.BAS".
  188.  
  189.  
  190. "/WIPE" says that if the destination drive has files on it, prompt the user
  191. for whether these files should be deleted or not.  Six sub-options show up in
  192. this case:
  193.  
  194.     Do *NOT* delete the x file(s)    Don't delete anything
  195.     List file(s)                     List the files but don't delete any of
  196.                                      them.  The user will be reprompted for
  197.                                      these four options after pressing a key.
  198.     Select file(s) to delete         List the files and allow the user to
  199.                                      select any to be deleted.  Keys:
  200.                                         * Cursor keys -- move among list
  201.                                         * Space       -- select that file
  202.                                         * Ctrl-Enter  -- select all files
  203.                                         * Ctrl-bs     -- deselect all files
  204.                                         * Enter       -- process those tagged
  205.                                         * Esc         -- skip processing
  206.                                      After pressing Enter, the selected files
  207.                                      will be deleted.  You will then get the
  208.                                      standard four prompts again.
  209.     Delete all file(s)               Delete all files in the specified
  210.                                      directory.  Subdirectory files will not
  211.                                      be deleted.
  212.     Reformat the diskette            If your output drive is either A or B,
  213.                                      the program will shell to DOS and execute
  214.                                      a "FORMAT d:" command.  This (and the
  215.                                      next) sub-option will result in the
  216.                                      subdirectories being eliminated, something
  217.                                      which the prior sub-options don't do for
  218.                                      you.
  219.     Quick-reformat the diskette      If your output drive is either A or B
  220.                                      and you're running under DOS 5.0 or higher,
  221.                                      the program will shell to DOS and execute
  222.                                      a "FORMAT d: /Q" command.
  223.  
  224. The default value for this option (/WIPE vs /-WIPE) can be set by using the
  225. CONFIGWS.EXE program. The original default is "/-WIPE".
  226.  
  227. "/-WIPE" reverses /WIPE.  The default value for this option can be set by using
  228. the CONFIGWS.EXE program.  The original default is "/-WIPE".
  229.  
  230. "/MULTI" says to go to a second disk if all of the files can't fit on the first
  231. diskette.  The default value for this option can be set by using the
  232. CONFIGWS.EXE program.  The original default is "/MULTI".
  233.  
  234. "/SINGLE" says process only one diskette at a time and to not prompt for the
  235. next diskette once the first gets filled up.  The default value for this option
  236. can be set by using the CONFIGWS.EXE program.  The original default is "/MULTI".
  237.  
  238.  
  239. "/SPLIT" says to split up large files which otherwise would not be able to fit
  240. onto the output disk.  For example, /SPLIT is useful when you have a 1.8MB file
  241. that you're trying to copy or move to a 1.2MB or 1.44MB diskette.  Files are
  242. split only if an empty diskette in the output destination would not be able to
  243. support the file; it will not split up a 800KB file just because the 1.2MB
  244. output diskette only has 600KB free.  Files will be given the extensions of
  245. .001, .002, etc until all necessary splitting is accomplished.  To put them back
  246. together again, use the DOS COPY copy with the /B option.  For example:
  247.  
  248.         COPY TEST.001/B+TEST.002/B TEST.ZIP
  249.  
  250. "/LABEL=label" specifies the volume label to be written to the output disk.
  251. By default, the label is not changed.  The label can be a quoted mixed-case
  252. string.  It can contain several replaceable lowercase only parameters: "mm" is
  253. replaced with the two-digit month, "dd" is replaced with the two-digit day, "yy"
  254. is replaced with the two-digit year, and "n" or "nn" or "nnn" is replaced by the
  255. sequence number of the disk.  All numeric fields are padded to the left with
  256. zeroes as necessary.  If the current date is November 7, 1993:
  257.  
  258.         /LABEL="BKyymmdd nn"
  259.  
  260. will label the first first "BK931107 01", the second disk "BK931107 02" etc.
  261. Note that labels can be no longer than 11 characters in length.  All characters
  262. except the replaceable parameters will be translated to uppercase characters.
  263.  
  264. "/START=n" specifies the first sequence number to use in place of "n", "nn", or
  265. "nnn" in the /LABEL parameter.  Defaults to "/START=1".
  266.  
  267. "/Fstatfile" specifies the name of a status file to be used.  This status file
  268. is a text file that reports on what's been processed by the program.  If it
  269. exists already, the status file is appended to, not overwritten.  A sample of
  270. some lines from the status file using the /S* option (which is not the default):
  271.  
  272.   FILL results for  /copy *.exe /ftest.txt /beep /wipe /s* /split
  273.   Being run on 11-07-1993 at 17:58:10
  274.  
  275.   Label        FileName    Date     Time                Size Operation
  276.  
  277.   TEST93 #01   AV.EXE       09/29/93 00:50:58          70,282 SKIP
  278.   TEST93 #01   BC.EXE       08/19/92 23:59:00         150,562 SKIP
  279.   TEST93 #01   BFIND.EXE    08/02/93 23:07:08          60,016 SKIP
  280.   TEST93 #01   VBDOS.EXE    08/19/92 23:59:00         555,520 COPY
  281.  
  282.   BRUCE        AV.EXE       09/29/93 00:50:58          70,282 SKIP
  283.   BRUCE        BC.EXE       08/19/92 23:59:00         150,562 SKIP
  284.   BRUCE        BFIND.EXE    08/02/93 23:07:08          60,016 SKIP
  285.  
  286. "/S+" specifies that the only files to be written to the status file are those
  287. files that actually get copied/moved.  This is the default.
  288.  
  289. "/S-" specifies that the only files to be written to the status file are those
  290. files that did not get copied/moved.  Since the skipping is determination is
  291. done with each disk, the status file may show the same file name as "SKIP" over
  292. and over again.
  293.  
  294.  
  295. "/S*" specifies that the status report should contain all files copied/moved as
  296. well as skipped.  This can be a huge report.
  297.  
  298. "/CONTINUAL" is used if you want the routine to continually check your floppy
  299. drive to see when a new diskette has been put in and continue once it recognizes
  300. this has happened.  The only time you'd have to press a key is if you want to
  301. stop processing diskettes (in which case you'd press Escape).  This option is
  302. only available if you're using DOS 4.0 or higher and only works for disks that
  303. have been formatted using DOS 4.0 or higher (it uses the serial number on the
  304. disk in order to determine that the disk has been replaced).
  305.  
  306. "/BEEP" says to beep once the routine is done doing its thing (a high tone
  307. followed by a low one).  It will also beep whenever it's time to stick in a new
  308. diskette (a low tone followed by a high one).  The default value for this option
  309. can be set by using the CONFIGWS.EXE program.  The original default is "/BEEP".
  310.  
  311. "/-BEEP" says to not beep upon completion.  The default value for this option
  312. can be set by using the CONFIGWS.EXE program.  The original default is "/BEEP".
  313.  
  314. "/FAKE" turns off the actual copying of files.  It basically puts you into
  315. simulation mode so you can see what it would do, how many disks it would take,
  316. et cetera.
  317.  
  318. "/Q" turns off the file-by-file status reporting.
  319.  
  320. "/?" or "/HELP" or "HELP" shows you the syntax for the command.
  321.  
  322.  
  323. Return codes:
  324.  
  325. FILL returns the following ERRORLEVEL codes:
  326.         0 = no problems, all files copied
  327.         1 = no problems, but some files skipped since /-MULTI
  328.       253 = had problems copying/moving the files
  329.       254 = no files found to copy/move
  330.       255 = syntax problems, or /? requested
  331.  
  332.  
  333.  
  334. Author:
  335.  
  336. This program was written by Bruce Guthrie of Wayne Software.  It is free for use
  337. and redistribution provided relevant documentation is kept with the program, no
  338. changes are made to the program or documentation, and it is not bundled with
  339. commercial programs or charged for separately.  People who need to bundle it in
  340. for-sale packages must pay a $50 registration fee to "Wayne Software" at the
  341. following address.
  342.  
  343. Additional information about this and other Wayne Software programs can be found
  344. in the file BRUCEymm.DOC which should be included in the original ZIP file.
  345. ("ymm" is replaced by the last digit of the year and the two digit month of the
  346. release.  BRUCE312.DOC came out in December 1993.  This same naming convention
  347. is used in naming the ZIP file that this program was included in.) Comments and
  348. suggestions can also be sent to:
  349.  
  350.                 Bruce Guthrie
  351.                 Wayne Software
  352.                 113 Sheffield St.
  353.                 Silver Spring, MD 20910
  354.  
  355.                 fax: (301) 588-8986
  356.  
  357. See BRUCEymm.DOC file for additional contact information.
  358.  
  359. Foreign users:  Please provide an Internet e-mail address in all correspondence.
  360.  
  361.