我正在尝试清除所有内容的文件夹,但是某个子文件夹及其内容。我的删除工作正常,但我无法弄清楚如何排除。
cd C:\testfolder
del * /S /Q
rmdire /S /Q "C:\testfolder"
但我不想删除文件夹C:\testfolder\subf
。我怎么能这样做?
答案 0 :(得分:0)
如果您要删除所有文件但不删除子文件夹,则可以使用以下
cd C:\testfolder
del *.* /S /Q
这将删除“testfolder”中的所有文件以及子文件夹中的所有文件,但会将子文件夹保留在那里。
答案 1 :(得分:0)
如果你至少使用windows vista(使用robocopy
命令),这应该可以完成这项工作
@echo off
setlocal enableextensions disabledelayedexpansion
rem Create a temporary empty folder
set "tempFolder=%temp%\%~nx0.%random%%random%%random%.tmp"
md "%tempFolder%" >nul 2>nul
rem Purge from target folder anything not in the empty source folder,
rem but exclude the indicated folder
robocopy "%tempFolder%" "c:\testfolder" /nocopy /purge /xd "c:\testfolder\subfolder"
rem Cleanup
rmdir "%tempFolder%" /s /q >nul 2>nul