Though it's not explicitly stated in the help text from start /?
:
START ["title"] [/D path] ...
the first quoted option is treated as the title for the window. In your case, that's the (supposed) executable name.
You can see that if you create an x y.cmd
file containing only the command @dir
, then run:
start /d "\program files" "\path\to\x y.cmd"
The directory \path\to
above is the directory where you created it, needed because you'll actually be in the program files
directory when you try to run it.
What you'll see is not a directory listing (because the script isn't running), but a new cmd
window titled \path\to\x y.cmd
.
If you instead use:
start "xyzzy" /d "\program files" "\path\to\x y.cmd"
you'll find that it does run the script, giving you a directory in a window titled xyzzy
.
In other words, if you want to quote your program name, you should provide an actual title so there's no confusion.