Random thought: the forward-slash switch character as used by DOS programs (e.g. chkdisk.exe /f /whatever) is actually a better choice than the dash used by UNIX programs. The forward slash is not a valid character in a DOS filename, so a glob will not expand to include a forward slash, therefore you will never get switches and arguments mixed up.

However, DOS doesn't have a real glob as far as I know (or at least, it's handled by each app itself, rather than the shell).