Well obviously it's equal to itself, but still.
February 8, 2012 10:59 PM   Subscribe

One of the odder bits of MS-DOS trivia I picked up in my formative years (presumably from More DOS for Dummies) was that if you precede a command with an equals sign, it'll still work just fine (e.g. "dir" but typed as "=dir"). Why is this?
posted by DoctorFedora to Computers & Internet (3 answers total) 1 user marked this as a favorite
 
Best answer: I believe it's because equals (=) is just another delimiter between arguments on the command line (like space, comma, and semicolon). Leading delimiters and multiple delimiters of course have no effect. So all of the following would have the same result (moving you up to the parent directory):
cd ..
 cd .. (leading space)
cd=..
===cd==..

posted by knave at 12:28 AM on February 9, 2012 [1 favorite]


Best answer: cd is an interesting example in DOS because it even works without a trailing delimiter: cd.. also goes to the parent directory and something like cd\dos\drivers will still work. This isn't true in Linux shells I've used or the newer Windows Powershell.)
posted by stopgap at 6:05 AM on February 9, 2012


Best answer: Text Delimiters separate one parameter from the next, in addition to spaces you can use commas, semicolons ; equals = and TAB

Early versions of MS-DOS were very minimalistic, I'm pretty sure that the way the code worked was to just swap these characters for spaces, not so much for your benefit but to avoid breaking other bits of DOS code when the command is interpreted.

Also prior to DOS 5.0, there was an undocumented DOS function that would allow you to set the DOS option delimiter character to something else.
A lot of this stuff was tightened up at the point when long filenames were introduced with Windows 95.
posted by Lanark at 3:47 PM on February 9, 2012


« Older What's an inexpensive tropical getaway for an...   |   I'm sick and my boyfriend is sick of me. Newer »
This thread is closed to new comments.