Why is an obviously invalid file name allowed?

  • This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.
This is pretty simple. The command Type NUL: >ABC:EFG.txt creates a file named just "ABC" with no error being generated, whereas the command Type NUL: >ABC*EFG.txt fails with an error as one would hope. The problem isn't specifically the colon because that can be explicitly tested for when verifying the file name, the problem is that there may be other invalid characters that produce the same results, and since I'm not fond of a program/batch file creating a file name that is not what the user specified, this is unacceptable to me. What's the deal here?