home *** CD-ROM | disk | FTP | other *** search
/ Tools en Utilities / CDASS_5.ISO / shell / file / copyit2.arj / CH.DOC < prev    next >
Encoding:
Text File  |  1992-05-17  |  19.8 KB  |  568 lines

  1.  
  2.  
  3.                   █████████████
  4.                  ███
  5.                 ███                ██▀▀▀▀▀██
  6.                 ██                 ██      █ █         █
  7.                 ██                 ██      █ ██       ██
  8.                 ██     █▀▀▀▀▀▀█    ██     ██ ██       ██
  9.                 ██    █▀      ▀█   ██▀▀▀▀▀▀▀  ██     ██
  10.                 ██   ██        ██  ██          ██   ██
  11.                 ███  ██        ██  ██           █████
  12.                  ███ ██        ██  ██            ███
  13.                   ████████████ ██  ██             █
  14.                      ██        ██  ██             █
  15.                      ██        ██  ██             █
  16.                      ██        ██                 █
  17.                      ▀▀█    █▀▀                   █
  18.                         ▀▀▀▀                      █
  19.  
  20.  
  21.                              IT OVER HERE !
  22.  
  23.  
  24.  
  25.  
  26.  -------------------------------
  27.   COPY IT OVER HERE version 2.0
  28.  -------------------------------
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.   Instead of typing:
  36. copy \DOS\UTILITIES\FILES\BACKUPS\MONTHS\myfile \LOTUS\WEEK1\FILES\1991
  37.  
  38. just enter: ┌──────────────┐
  39.             │  CH myfile   │
  40.             └──────────────┘
  41.  
  42.   and my program does all the work.  It searches any disk drives you
  43. specify, speeds through all directories, finds the file, then brings
  44. a copy to your working directory.
  45.  
  46.   If you love typing, stick with DOS's "copy".  But for everyone else, this
  47. is the answer you've been looking for.
  48.  
  49.  
  50. ============================================================================
  51. ===============   COPY IT OVER HERE !   ====================================
  52. ============================================================================
  53.  
  54.  
  55.           Usage:   CH [filename] [/option] [drive]
  56.  
  57.  
  58.  
  59.    OPTIONS:
  60.  
  61.    /USE    Use menu to choose file.  Normally, Copy It Over Here
  62.            operates on the command line.  This causes it to collect
  63.            all the files it can find, then form a menu with them.
  64.            You may choose a file from the menu by highlighting it,
  65.            then pressing [ENTER].
  66.            The file will be copied "over here!".
  67.  
  68.            NOTE: If the directory name is over 45 characters long,
  69.                  the MENU will abort itself, since everything cannot
  70.                  be displayed within it.  The menu has a maximum width
  71.                  of 78 characters, and directories that extend 45
  72.                  chars will NOT fit.  Therefore, an "... Aborted"
  73.                  message appears and Copy It Over Here exits with
  74.                  an error.
  75.  
  76.    /V      Verify copy and write file using single-byte method.  If
  77.            you want to be EXTREMELY safe (or you are a paranoid
  78.            schizophrenic), this method copies the file by reading
  79.            the input in single bytes, then writes the read-byte.
  80.            Although a little slower, it does not use an internal
  81.            memory buffer for read/writes.
  82.  
  83.    /R      Always overwrite files that already exist in target.  If
  84.            CH finds a file that has the same name as
  85.            an already existing file, it usually prompts you to
  86.            "Rename file here?".  This overrides that, and causes
  87.            CH to always replace the existing file with the incoming
  88.            one.  BE CAREFUL WHEN USING THIS!  Especially if you specify
  89.            wildcards.  You can quickly ruin a good file.
  90.  
  91.    /-R     Skip files that already exist in target. If CH finds a file
  92.            that has the same name as an already existing file, it
  93.            usually prompts you to "Rename file here?".
  94.            This overrides that, and causes CH to NEVER copy over
  95.            an already existing file.
  96.  
  97.    /T      Find only today's files.  Locates only those files that
  98.            have been altered today.  This would be good for locating
  99.            files that need to be backup up.
  100.  
  101.    /+      Append incoming file (if same name).  If CH finds a file
  102.            that has the same name as an already existing file, it
  103.            usually prompts you to "Rename file here?".
  104.            This overrides that, and causes CH to append an incoming
  105.            file onto the already existing file.
  106.            The /+ option is useful for appending text files together,
  107.            and can be used with the /MENU or /P option to be selective
  108.            about which files are to be appended.
  109.  
  110.    /H      Copy Hidden/System files.  Normally, CH copies only regular
  111.            files (those without the SYSTEM, READ ONLY, and HIDDEN bit
  112.            set).  This causes CH to find every file, no matter what
  113.            the attribute.
  114.  
  115.    /A      Change Attributes.  After the file copy, you will be prompted
  116.            for a new attribute for the file.  Consult your DOS manual
  117.            for an explanation of file attributes.
  118.  
  119.    /P      Prompt for copying.  Prompts for each file it finds.
  120.  
  121.    /M      Move file.  Copies, then erases old.
  122.  
  123.    /1      Stop after first match.  Stops the search once a single file
  124.            has been copied.
  125.  
  126.    /S#     Stop after # of matches.  Stops the search once # files
  127.            have been copied.
  128.            Usage: CH file.com /S3      stops after three files
  129.                   CH file.com /S7      stops after seven files
  130.  
  131.    [drive] Specifies a logical disk drive to search
  132.  
  133.  
  134.  
  135.  
  136.  
  137.  
  138.  
  139. Examples: 
  140.  
  141.           CH myfile.doc /M A:    moves the file "myfile.doc" from the a: drive
  142.                                  onto the current disk drive.
  143.  
  144.           CH *.sys /H            copies the all .SYS files Into the current
  145.                                  directory.
  146.  
  147.           CH ch.doc B:           copies the .doc file from the B: drive, onto
  148.                                  the current drive/directory.
  149.  
  150.           CH list.com /USE       creates a menu from all LIST.COM files on
  151.                                  the drive, then allows you to pick one
  152.                                  for copying.
  153.                                  NOTE: If a directory is longer than 45
  154.                                  characters, do not use the menu.
  155.  
  156.           CH list.com /1         copies the first LIST.COM found, then
  157.                                  stops.
  158.  
  159.           CH list.com /S3        copies the first three LIST.COMs found,
  160.                                  then stops.
  161.  
  162.           CH *.com  /-R          copies all .COM files to current directory.
  163.                                  If a file is found that already exists
  164.                                  in the current directory, it is skipped.
  165.  
  166.           CH *.com  /R           copies all .COM files to current directory.
  167.                                  If a file is found that already exists
  168.                                  in the current directory, it is replaced
  169.                                  without prompting.
  170.  
  171.           CH *.* /T              copies all files that have been changed
  172.                                  today.
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.    CHANGING ATTRIBUTES
  184.    ===================
  185.  
  186.    You can change a file attr. once it
  187.    is copied using the following pop-up
  188.    menu:
  189.  
  190.    (1) Hidden          For more information about attributes, and
  191.    (2) System          their qualities, see your DOS manual.
  192.    (3) Archive
  193.    (4) Read-Only
  194.    (5) Nevermind!
  195.  
  196.    ENTER CHOICE:
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.               ╒══════════════════════════════════════════╕
  206.            ═══╡                                          ╞═══
  207.              ═╡              WILDCARDS                   ╞═
  208.            ═══╡                                          ╞═══
  209.               ╘══════════════════════════════════════════╛
  210.  
  211.         Copy It Over Here searches for the usual DOS wildcards.
  212.         You must have a "." within your filename, otherwise,
  213.         CH does not recognize it as a file.
  214.  
  215.         Previous versions of CH have used "string matching" in
  216.         the filenames, however this one can return to normal.
  217.  
  218.         I had problems with string allocation in my previous code,
  219.         that forced me to scan EVERY FILE in every directory
  220.         (took forever!), then match strings to see if the
  221.         string you placed on the command line existed within
  222.         the filename.
  223.  
  224.         I fixed that problem, and wilcards are back to normal.
  225.         Valid DOS wilcards are:
  226.  
  227.         "*" and "?"         IE: FILE.*    would find FILE.COM
  228.                                                      FILE.EXT
  229.                                                      FILE.DOC  ...etc
  230.  
  231.                                 FILE?.com would find FILE7.COM
  232.                                                      FILE0.COM ...etc
  233.  
  234.                                 *.*       would find all files
  235.  
  236.         Consult your DOS manual for a further explanation of
  237.         wildcard file specifications.
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.    OTHER USES OF THIS PROGRAM
  254.    ==========================
  255.  
  256.    CopyItOverHere can be used also as a file-finder.  Merely use the
  257.    "prompt" option, and answer "N" to all the copying prompts.
  258.  
  259.    If you'd also like to find duplicate files on your diskette, use
  260.    the prompt option, and note the date/time/size information that
  261.    is displayed.
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  
  269.  
  270.  
  271.  
  272.        ERROR CHECKING
  273.      """"""""""""""""""""
  274.  
  275.         Copy It Over Here checks to see if the file already exists in the
  276.    current directory.  If so, you are prompted to rename the file in the
  277.    current directory before copying a file over.  This can be altered
  278.    with the /R or /-R switches.
  279.  
  280.         Copy It Over Here also checks to see if the filename you specified
  281.    has a "." within it.  NOTE: If your file does NOT have an extension,
  282.    place an extra "." on the end.
  283.  
  284.         If the destination file has a size of 0 bytes, CH says:
  285.    "WARNING: File not copied/moved" and will abort a MOVE operation.
  286.  
  287.         If the destination and source file are not the same size
  288.    (most likely, all the bytes were not copied),  CH says:
  289.    "WARNING: Files not identical after copy/move" and will abort a MOVE
  290.    operation.
  291.  
  292.         Copy It Over Here will scan the current directory.
  293.    Instead, it skips it.
  294.  
  295.         If you have many files with the same name on your drive, use
  296.    the /P or /USE option.
  297.  
  298.         Also, Copy It Over Here uses an internal memory buffer to obtain
  299.    as many bytes as possible from the input file, then write them to
  300.    the output file.  For those of you who are curious, here is the
  301.    C code:
  302.  
  303.    for(bufsiz=0x4000;bufsiz>=128;bufsiz>>=1)
  304.    {   buffer=(char *) malloc(bufsiz);
  305.        if (buffer)
  306.        {   while (1)
  307.            {   n=read(fdfrom,buffer,bufsiz);
  308.                if(n==-1) break;
  309.                if(n==0)
  310.                {   free(buffer);
  311.                    close(TO);
  312.                    close(FROM);
  313.                    return;        }
  314.                if(n!=write(fdto,buffer,(unsigned)n)) break;
  315.            }   free(buffer);   break;
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  ▐▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▌
  342.  ▐                                                                           ▌
  343.  ▐                 Why is this a revolution in copying?                      ▌
  344.  ▐                                                                           ▌
  345.  ▐ Every copy utility I have used or purchased do the same thing.  Add on    ▌
  346.  ▐ a mouse feature maybe, a system file copying, or specialized diskette     ▌
  347.  ▐ copying...                                                                ▌
  348.  ▐ I didn't need those, and you probably don't either.  I need something     ▌
  349.  ▐ for my tired hands and eyes, something that relieves all the unnecessary  ▌
  350.  ▐ junk given to me by MS-DOS.                                               ▌
  351.  ▐   Yea, DOS makes a nice little TSR copy, but I knew there was a better    ▌
  352.  ▐ and easier way.                                                           ▌
  353.  ▐                                                                           ▌
  354.  ▐   "But Dave", you say, "All you did was take off the pathname from DOS's  ▌
  355.  ▐   copy function".                                                         ▌
  356.  ▐                                                                           ▌
  357.  ▐ WRONG !!  Not only did I relieve you of the pathname, now, you don't even ▌
  358.  ▐ have to know where the heck you ARE on your disk.                         ▌
  359.  ▐                                                                           ▌
  360.  ▐ ALSO:  When using DOS's "copy", you can mess up the spelling of your      ▌
  361.  ▐        directory and copy your file into some weird-named file.  Then,    ▌
  362.  ▐        you lose your data.                                                ▌
  363.  ▐    Say you copy a couple of files: copy "c:\dos\backup\*.* \week1\moden"  ▌
  364.  ▐                                                                           ▌
  365.  ▐      You see how I misspelled "MODEM" and made "MODEN"?  Most people      ▌
  366.  ▐     would've missed the mistake and all the files from your backup        ▌
  367.  ▐     directory would be jumbled and lost.                                  ▌
  368.  ▐            ESPECIALLY IF YOU ERASED THE ORIGINAL FILES !!!                ▌
  369.  ▐                                                                           ▌
  370.  ▐                My program doesn't make that mistake.                      ▌
  371.  ▐                                                                           ▌
  372.  ▐             Yes, this is the true revolution of copying ...               ▌
  373.  ▐                                                                           ▌
  374.  ▐███████████████████████████████████████████████████████████████████████████▌
  375.  
  376.  
  377.  
  378.  
  379.  
  380.  
  381.  
  382.  
  383.  
  384.  
  385.  
  386.  
  387.      This program is shareware, which means you "try" before you "buy".
  388.   The registration fee for it is $10.00, an amount I consider to be more
  389.   than fair.
  390.      If you find yourself using this program, enjoying the convenience
  391.   of it, then it's time to register !
  392.  
  393.   WHY SHOULD YOU REGISTER ?
  394.  
  395.     You get free upgrades, a constant supply of new program information
  396.   (if I make it, you'll know about it), and for only $10.00 more, I will
  397.   fill up a diskette with any programs you like, and want to try out.
  398.  
  399.     Also, a lifetime warranty for my products.
  400.  
  401.  
  402.        To register: mail $10.00 to
  403.  
  404.                Dave Smith
  405.                1104 Mason Dr.
  406.                Hurst TX 76053
  407.  
  408.  
  409.  
  410.         ***  or see CATALOG.COM for a complete set of utils  *******
  411.  
  412.  
  413.  
  414.  
  415.  
  416.    WITH REGISTRATION, YOU GET:
  417.  
  418.         1. Unlimited free upgrades.
  419.         2. Special discounts on other utilities.
  420.         3. Unlimited FREE technical support by mail, or COMPUSERVE.
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.     Version History:
  439.  
  440.   2/91    1.0  First release containing .pcx files, ansi graphics,
  441.                and two variations of "Bring"
  442.  
  443.   4/91    1.5  As requested, I removed some sounds, replaced memory
  444.                allocation code with a superior method, and placed
  445.                a "prompt" for copying file.
  446.  
  447.   5/91    1.7  Merged "MoveItOverHere" by including move option, added
  448.                prompt and hidden/system options.
  449.                Removed the bright colors that so many people had written
  450.                about, incorporated stats (files/directories/match--
  451.                searched), and added wildcard specs.
  452.  
  453.   7/91    1.81 Allows attribute changing on the fly.
  454.            
  455.   9/91    1.9  Improved the speed and fixed a few minor bugs.
  456.                Also includes checking for pre-existing files, 
  457.                attributes and prompting to rename duplicate files.
  458.  
  459.   12/92   1.91 Had errors in my damn code.  Fixed some minor
  460.                stuff (screen decoration, etc)
  461.  
  462.   3/93    2.0  Delivered all the promised "good stuff" and added
  463.                a shitload of options.  Serious error checking
  464.                was added.  Also eliminated the call to DOS for
  465.                copying, and instead used a 4096 byte buffer to
  466.                move the bytes from one file to the next.
  467.  
  468.                ALSO: Much faster!  Looks through 139 directories
  469.                      in under 4 seconds on my 386-40.
  470.  
  471.  
  472.  
  473.  
  474.  
  475. ────────────────────────────────────────────────────────────────────────
  476.  
  477.   Other than that, COPY IT OVER HERE ! is a simple program.  Designed
  478. for lazy people like myself, I hope it comes in handy for all your
  479. file needs.
  480.  
  481.  
  482.                 Questions, comments ?
  483.                  write me:    Dave Smith
  484.                        Compuserve 71441,2723
  485.  
  486.  
  487.  
  488.  
  489.  from the mind of
  490.   ┌────────────┐
  491.   │            │┐
  492.   │ DAVE SMITH ││┐
  493.   │            │││
  494.   │            │││┐
  495.   └──┬─────────┘│││
  496.      └─┬────────┘││┐
  497.        └──┬──────┘││
  498.           └─┬─────┘│┐
  499.             └─┬────┘│┐
  500.               └──┬──┘│┐
  501.                  └─┬─┘│
  502.                    └─┬┘┐
  503.                      └─┘
  504.                         *
  505.                          █
  506.                         ████
  507. ██████████████████████████████████████████████████████████
  508.  
  509.  
  510.  
  511.  
  512.  
  513.  
  514.  
  515.  
  516.  
  517.  
  518.  
  519.  
  520.  
  521.  
  522.  
  523.  
  524.    ███████╗ ██╗   ██╗ ██████╗  ██████╗   ██████╗  ██████╗  ████████╗ ██████╗
  525.    ██╔════╝ ██║   ██║ ██╔══██╗ ██╔══██╗ ██╔═══██╗ ██╔══██╗ ╚══██╔══╝ ╚════██╗
  526. ╓──███████╗ ██║   ██║ ██████╔╝ ██████╔╝ ██║   ██║ ██████╔╝    ██║      ▄███╔╨─╖
  527. ║  ╚════██║ ██║   ██║ ██╔═══╝  ██╔═══╝  ██║   ██║ ██╔══██╗    ██║      ▀▀══╝  ║
  528. ║  ███████║ ╚██████╔╝ ██║      ██║      ╚██████╔╝ ██║  ██║    ██║      ██╗    ║
  529. ║  ╚══════╝  ╚═════╝  ╚═╝      ╚═╝       ╚═════╝  ╚═╝  ╚═╝    ╚═╝      ╚═╝    ║
  530. ║                                                                             ║
  531. ║                                                                             ║
  532. ║      Support for this program is available in the following ways:           ║
  533. ║                                                                             ║
  534. ║                                                                             ║
  535. ║          ╓──┐ ╓──┐ ╓─╥─┐ ╥──┐ ╥  ┬  ╓─┐ ╥──┐ ╥──┐ ╥  ┬ ╥──┐                 ║
  536. ║          ║    ║  │ ║ ║ │ ╟──┘ ║  │  ╙─┐ ╟─   ╟─┬┘ ╙╖┌┘ ╟─                   ║
  537. ║          ╙──┘ ╙──┘ ╨ ╨ ┴ ╨    ╙──┘ ╙──┘ ╨──┘ ╨ ┴   ╙┘  ╨──┘                 ║
  538. ║          User ID:  71441,2723                                               ║
  539. ║          I usually log on every other day and check my mail.                ║
  540. ║                                                                             ║
  541. ║                                                                             ║
  542. ║                       ▄▄▄▄▄▄  ▄▄▄▄▄▄  ▄▄▄▄▄▄▄                               ║
  543. ║                       █ ▄▄ █▄ █ ▄▄ █▄ █ ▄▄▄▄█                               ║
  544. ║                       █ ▄▄▄ █ █ ▄▄▄ █ █▄▄▄▄ █                               ║
  545. ║                       █▄▄▄▄▄█ █▄▄▄▄▄█ █▄▄▄▄▄█                               ║
  546. ║          Drop me a line on the MotherBoard II Bulletin Board                ║
  547. ║                     David Smith   (214) 642-1287                            ║
  548. ║                                                                             ║
  549. ║                                                                             ║
  550. ║                 ▄██▄   ▄██▄  ▄███████▄   ▄█▄  ▄██▄                          ║
  551. ║                 █████▄█████ ████▀▀▀████ █████ ████                          ║
  552. ║                 ███████████ ████▄▄▄████ █████ ████                          ║
  553. ║                 ████   ████ ███████████ █████ ████                          ║
  554. ║                 ████   ████ ████   ████ █████ ████▄▄▄▄▄▄▄                   ║
  555. ║                 ▀██▀   ▀██▀ ▀██▀   ▀██▀  ▀█▀   ▀████████▀                   ║
  556. ║                               Write to:                                     ║
  557. ║                                                                             ║
  558. ║                              David Smith                                    ║
  559. ║                            1104 Mason Dr.                                   ║
  560. ║                            Hurst TX 76053                                   ║
  561. ║                                                                             ║
  562. ╙─────────────────────────────────────────────────────────────────────────────╜
  563.  
  564.  
  565.  
  566.  
  567.  
  568.