[comp.sys.ibm.pc] '=' on command line to .BAT files

ljz@fxgrp.UUCP (Lloyd Zusman) (05/15/88)

Consider the following fragment of a .BAT file intended to run under
DOS3.3.  Assume the file is called MAKEIT.BAT ...

    @echo off
    ...
    ...
    c:\bin\make %1 %2 %3 %4 %5 %6 %7 %8 %9
    ...
    ...

In other words, MAKEIT.BAT does arbitrary setup stuff, invokes a 'make'
program with the command-line arguments passed to MAKEIT.BAT, and then
does some arbitrary cleanup stuff.

The problem arises because sometimes I want to invoke my .BAT file
like this:

    MAKEIT SOMETHING=WHATEVER
                    ^
                    ^
           note the equal sign

The equal sign screws things up, as DOS seems to treat it as an argument
separator.

I'm well versed in programming and am very capable of writing an
equivalent program to MAKEIT in some language or another, thereby
avoiding this problem.  However, is there any hope of getting around
this problem with equal signs while still using a .BAT file?


--
    Lloyd Zusman
    Master Byte Software
    Los Gatos, California		Internet: ljz@fx.com
    "We take things well in hand."	UUCP:     ...!ames!fxgrp!ljz

scott@ubvax.UB.Com (Scott Scheiman) (05/17/88)

In article <300@fxgrp.UUCP>, ljz@fxgrp.UUCP (Lloyd Zusman) writes:
| Consider the following fragment of a .BAT file intended to run under
| DOS3.3.  Assume the file is called MAKEIT.BAT ...
|     ...
|     c:\bin\make %1 %2 %3 %4 %5 %6 %7 %8 %9
| 
| The problem arises when I want to invoke my .BAT file like this:
| 
|     MAKEIT SOMETHING=WHATEVER           (note the equal sign)
| 
| The equal sign screws things up, as DOS seems to treat it as an argument
| separator....   Is there any hope of getting around
| this problem with equal signs while using a .BAT file?

Out of frustration I fugured out a simple patch to PC DOS 3.10 a long
time ago, to solve this very problem.  (Actually it wasn't so simple
using DEBUG for the first time, without DOS listings!)

I don't know if it is still applicable on newer versions of DOS (I still
use 3.10 :-) ).  But I'd be happy to share the details--if anyone's
interested, send email.
-- 
"Ribbit!"         Scott Scheiman   (408) 562-5572        Ungermann-Bass, Inc.
  ` /\/@\/@\/\           scott@ubvax.UB.com          2560 Mission College Blvd.
   _\ \ -  / /_         ...uunet!ubvax!scott            Santa Clara, CA 95050

jcmorris@mitre-bedford.ARPA (Joseph C. Morris) (05/18/88)

In article <7791@ubvax.UB.Com> scott@ubvax.UB.Com (Scott Scheiman) writes:
>
>Out of frustration I fugured out a simple patch to PC DOS 3.10 a long
>time ago, to solve [the problem of COMMAND.COM treating the equal sign 
>as a delimiter]

How about posting it?  There are several people who I've heard from who 
would like to be able to use the entire character set in parameters.
My problem has been with the semicolon...are there any other characters
we need to know about?

Along that line...what patches have people found necessary for DOS?  In
addition to this one for the delimiters, I've seen references to the ^W/^U
cancel command, and I've patched IBMBIO.COM to select the CONFIG.SYS file
at boot time.  (And yes, Microsoft, we do understand that the system can
change and invalidate the patches.)

Maybe a posting of the changes people have installed could be passed back
to the folk at Microsoft for inclusion with the next release...