Is there an ELSE in DOS? Back in the days when I was doing more of this kind, there wasn’t.
If my theory is correct and your ELSE is ignored, you might be better off doing
IF NOT EXIST file GOTO label
... which will also save you a line of code (one immediately after your IF).
Secondly, I vaguely remember some kind of error with checking for directories. Life would be easier if you could check for a file in this directory. If there is no file that you can be sure of, try something (to work with Win95, IIRC) would add the NUL device NUL name to your directory name, for example.
IF NOT EXIST C:\dir\NUL GOTO ...
source share