如何删除网络映射驱动器上含双引号的无效文件名文件?
如何删除网络映射驱动器上含双引号的无效文件名文件?
别担心,这种带特殊字符的长文件名确实容易踩坑,我给你几个针对性的解决办法:
CMD下正确转义双引号的命令
你之前尝试的\\?\路径思路是对的,但问题出在没有正确转义文件名里的双引号。在CMD中,需要用^符号来转义双引号,同时把整个路径用双引号括起来(因为路径里有空格)。正确的命令应该是:del "\\?\Z:\M\13^" vs 15^" vs 17^".png"解释一下:
^会告诉CMD后面的双引号是文件名的一部分,不是命令的分隔符,这样就能正确识别完整的文件名了。用PowerShell来删除(更推荐)
PowerShell对特殊字符和长文件名的支持比CMD更友好,转义方式也更灵活:- 方法一:用反引号(`,就是键盘上~键的位置)转义双引号:
Remove-Item "\\?\Z:\M\13`" vs 15`" vs 17`".png" - 方法二:直接用单引号把整个路径括起来,这样里面的双引号不需要转义:
Remove-Item '\\?\Z:\M\13" vs 15" vs 17".png'
运行PowerShell时建议右键选择「以管理员身份运行」,避免权限问题。
- 方法一:用反引号(`,就是键盘上~键的位置)转义双引号:
迂回方法:复制到本地后删除
如果上面的命令行方法都不行,可以尝试把M文件夹整个复制到本地磁盘(比如C盘某个文件夹),复制完成后在本地删除那个带问题的文件,再回到Z盘删除空的M文件夹。本地磁盘的\\?\路径支持通常更稳定,更容易处理特殊文件名。
备注:内容来源于stack exchange,提问作者user3597275
相关产品推荐
相关产品推荐

