The equals sign is "special" when the DOS shell is processing values from the command line, and different versions of DOS may treat it differently. For example, in the FOR command it is basically treated as white space (the same as commas and real spaces). At least in some versions of DOS, the following are equivalent:
FOR %f in (1 2 3) DO DIR %f.EXE FOR %f in (1,2,3) DO DIR %f.EXE FOR %f in (1=2=3) DO DIR %f.EXE Also, you can't normally have an equals sign in any part of an environment variable (either its name or its contents), though you can sometimes manipulate things with double quotes to make it happen (with some versions of DOS, at least). You can also use an equals sign after ECHO with some versions of DOS to write an empty line: ECHO= In your batch examples, the equals sign is not being treated as a switch character, it is be treated (sometimes) as white space. There's no way your batch files will work consistently across different DOSes if you expect them to treat equals signs as "regular" characters. ____________________________________________________________ How To Remove Eye Bags & Lip Lines Fast (Watch) Womans Weekly http://thirdpartyoffers.juno.com/TGL3141/583cd0e62025b50e56f73st01vuc ------------------------------------------------------------------------------ _______________________________________________ Freedos-devel mailing list Freedos-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/freedos-devel