【发布时间】:2025-12-12 10:40:01
【问题描述】:
如果文件夹 (rd/rmdir) 仅包含一个特定文件,则需要一种删除该文件夹的方法。如果有任何其他文件或子文件夹,请忽略它。尝试用尽可能少的代码来做到这一点。目前,我正在这样做......
If Exist "C:\Folder\SubFolder\filename.txt" Move /Y "C:\Folder\SubFolder\filename.txt" "%TEMP%"
If Not Exist "C:\Folder\SubFolder\*" RD "C:\Folder\SubFolder" /Q /S
但是,即使该文件夹不包含任何文件,该文件夹也不会被删除。
这可能在批处理文件中吗?提前谢谢。
【问题讨论】:
-
If Not Exist "C:\Folder\SubFolder\*"是你的问题。您不能使用通配符来搜索任何类似的文件。 -
您能说明一下具体的任务吗?是否要识别仅包含一个特定文件但不包含其他文件或目录对象的目录,如果找到,则移动该文件并删除该目录?是否要找到包含特定文件的目录,移动该文件,然后删除该目录,而不考虑其中可能保留的任何其他文件或目录对象?或者可能是为了识别包含特定文件的目录,并且只有在移动该文件后该目录变为空时,才删除该目录?
标签: batch-file directory rmdir