batch-file - 如何使用命令提示符删除除一个文件夹及其内容之外的所有文件夹?

标签 batch-file cmd

例如,我有一个文件夹 abc,其中包含子文件夹 1234。现在我想删除除文件夹 2 及其内容之外的所有文件夹。我已经尝试过了

PUSHD (c:\abc\2) 
rd /s /q "C:\abc" 2>nul

但它也会删除 2 文件夹内的文件。我不想删除文件夹 2 中的任何文件?

最佳答案

以下代码应该可以工作:

for /D %%D in ("C:\abc\*.*") do (
    if /I not "%%~nxD"=="2" (
        2> nul rd /S /Q "%%~fD"
    )
)

for/D 循环遍历目录 1234
if 语句检查当前迭代目录的名称是否为 2

关于batch-file - 如何使用命令提示符删除除一个文件夹及其内容之外的所有文件夹?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36979959/

相关文章:

windows - 在不使用 Find 命令的情况下检查服务是否正在运行

windows - & 在批处理文件参数中签名以传递给另一个程序

windows - 将文件从 Windows 复制到远程 Linux 系统的 BAT 脚本

c# - 使用 C# 从命令行启动 minecraft 1.6.4

linux - 设置 Rsync 使用 cwrsync 从 Windows 拉取到 Linux Box

启用 FIPS 的服务器中的 C# MD5 哈希

无法从 Windows 批处理脚本构建 C 程序

C++ ShellExecute特殊字符

python - 在python中通过windows cmd用记事本打开服务器上的文件

java - 如何在java程序中使用mkdir和rmdir命令