aux文件删除,找不到指定文件,文件无法删除

今天清理电脑的时候发现有个文件夹删不掉,提示说找不到该项目
aux文件删除,找不到指定文件,文件无法删除
我就蒙了,这不就在这里么,为啥找不到,然后我就进去一层一层找,发现有个文件名为aux.c的文件删不掉
aux文件删除,找不到指定文件,文件无法删除
我就奇怪了,为什么会删不掉,然后我企图创建一个同名文件覆盖掉它,令人意想不到的事情出现了
aux文件删除,找不到指定文件,文件无法删除
我甚至无法让新建的记事本叫做这个名字

查了半天才找到原因:
aux是设备名 Windows 下不能够以下面这些字样来命名文件/文件夹,包括“aux”“com1”“com2”“prn”“con”和“nul”等 因为这些名字都属于设备名称,等价于一个 DOS 设备,如果我们把文件命名为这些名字,Windows 就会误以为发生重名,所以会提示“不能创建同名的文件”等等。
当然,有一些特殊的方法可以偷机取巧,建立以这些设备名为名的文件夹,比如我们在命令提示符下执行 md C:\aux\ 复制代码就在 C 盘建了一个名叫 aux 的文件夹。此文件夹虽然可以访问,也可以建立子文件夹,但却无法删除,因为 Windows 不允许以这种方式删除设备。在系统看来,这个 aux 文件夹就是设备。

解决方法1:
我们只要按照完整的 UNC 路径格式,就是网上邻居的路径格式,正确输入文件路径及文件名即可。
即使用rd或del命令删除文件:
比如要删除 C 盘下的 aux 文件夹,可在命令提示符下执行: rd /s \.\C:\aux (rd 是命令提示符删除文件夹的命令,/s 参数表示从所有子目录删除指定文件。)
再比如要删除 C 盘 temp 文件夹下的 aux.exe 文件,在命令提示符下执行: del \.\C:\temp aux.exe

解决方法2:
我试了上面那种方法结果没用,还是找不到文件,不知道是写错了还是怎么的,然后又发现了这种方法
新建一个记事本文件
复制代码:
DEL /F /A /Q \?%1
RD /S /Q \?%1
保存为bat文件

aux文件删除,找不到指定文件,文件无法删除
然后将待删除文件拖拽到该文件上,即可删除
aux文件删除,找不到指定文件,文件无法删除