Every now and then, some tool on my system runs berserk and starts to generate
files called 
nul. This is a clear indication that there's something going
wrong with output redirection in a script, but I still have to figure out
exactly what's going on. Until then, I need at least a way to get rid of those
files.
Yes, that's right, you cannot delete a file called 
nul that easily - neither
using Windows Explorer nor via the DOS prompt. 
nul is a very special filename for
Windows - it is an alias for the null device, i.e. the bit bucket where
all the redirected output goes, all those cries for help from software
which we are guilty of ignoring all the time.
UNC path notation to the rescue: To remove a file called 
nul in, say 
c:\temp,
you can use the DOS 
del command as follows:
  del \\.\c:\temp\nul
Works great for me. But since I rarely use UNC syntax, I sometimes forget
how it looks like. Worse, the syntax requires to specify the full path
of the 
nul file, and I hate typing those long paths. So I came up
with the following naïve batch file which does the job for me.
It takes one argument which specifies the relative or absolute path of
the 
nul file. Examples:
   rem remove nul file in current dir
   delnul.bat nul
   rem remove nul file in subdir
   delnul.bat foo\nul
   rem remove nul file in tempdir
   delnul.bat c:\temp\nul
For the path completion magic, I'm using the 
for
command which has so many options that my brain hurts whenever I read its 
documentation. I'm pretty sure one could build a Turing-complete language using
just 
for...
  @echo off
  set fullpath=
  for %%i IN (%1x) DO set fullpath=%%~di%%~pi
  set filename=
  for %%i IN (%1x) DO set filename=%%~ni
  if not "x%filename%" == "xnulx" (echo Usage: %0 [somepath\]nul && goto :eof)
 
  echo Deleting %fullpath%nul...
  del \\.\%fullpath%nul
DelinvFile 
takes this a lot further; it has a Windows UI and can delete many other
otherwise pretty sticky files - 
nul is not the only dangerous file
name; there's 
con, 
aux, 
prn and probably a couple of other
magic names which had a special meaning for DOS, and hence also
for Windows.
to top