例如,有一个名为%pathtofolder%的变量,因为它清楚地表明它是文件夹的完整路径。
我想删除这个目录中的每一个文件和子文件夹,但不是目录本身。
但是,可能会出现类似“此文件/文件夹已被使用”的错误…当这种情况发生时,它应该继续并跳过该文件/文件夹。
这有什么命令吗?
例如,有一个名为%pathtofolder%的变量,因为它清楚地表明它是文件夹的完整路径。
我想删除这个目录中的每一个文件和子文件夹,但不是目录本身。
但是,可能会出现类似“此文件/文件夹已被使用”的错误…当这种情况发生时,它应该继续并跳过该文件/文件夹。
这有什么命令吗?
当前回答
Rmdir是我最喜欢的命令。它用于删除大文件和带有子文件夹的文件夹。不会创建备份,因此在运行此命令之前,请确保已安全地复制了文件。
RMDIR "FOLDERNAME" /S /Q
这将无声地删除文件夹以及所有文件和子文件夹。
其他回答
我使用Powershell
Remove-Item c:\scripts\* -recurse
它将删除文件夹的内容,而不是文件夹本身。
我有以下对我有效的解决方案:
/R /D %A in (*node_modules*) do rmdir "%A" /S /Q
它从当前目录及其子文件夹中删除所有节点模块文件夹。
这与上面发布的解决方案类似,但我仍然在这里发布这个,以防有人发现它有用
这将删除文件夹和文件,并留下文件夹。
pushd "%pathtofolder%" && (rd /s /q "%pathtofolder%" 2>nul & popd)
我能想到的最简单的解决方案是删除整个目录
RD /S /Q folderPath
然后重新创建这个目录:
MD folderPath
删除文件:
del PATH_TO_FILE
删除包含所有文件的文件夹。
rmdir /s /q PATH_TO_FOLDER
删除特定文件夹中的所有文件(不删除文件夹本身)有点复杂。Del /s *。*不能删除文件夹,但可以从所有子文件夹中删除文件。因此需要两个命令:
del /q PATH_TO_FOLDER\*.*
for /d %i in (PATH_TO_FOLDER\*.*) do @rmdir /s /q "%i"