问题
在 Windows 中,使用第三方 Webdav 客户端 RaiDrive 挂载并了 NTFS 的映射盘后,出现部分文件名中带有点"."的目录无法删除问题。可能是由于文件名包含无效名称造成的。
例如,文件名带有尾随空格或尾随句点,或者文件名仅由空格组成,则可能无法删除文件。
例如,使用典型的 Win32 语法打开名称中带有尾随空格或尾随句点的文件,则在打开实际文件之前会去除尾随空格或句点,导致无法找到正确文件,从而无法正确删除。
代码
@echo off
chcp 65001 1>nul
REM 使用 chcp 65001 声明,采用UTF-8编码
echo Delete special files in windows
echo.
echo Author:Shanks
echo Blog:Yudelei.com
echo Email:Shankschn.Lee@gmail.com
echo.
set /p a=Please drag and drop the file or folder to this window:
set "b=\\?\%a%"
rd /S /Q "%b%"
echo.
pause
参考
docs.microsoft.com/en-us/troubleshoot/windows-server/backup-and-storage/cannot-delete-file-folder-on-ntfs-file-system
stackoverflow.com/questions/4075753/how-to-delete-a-folder-that-name-ended-with-a-dot
stackoverflow.com/questions/1965787/how-to-delete-files-subfolders-in-a-specific-directory-at-the-command-prompt-in