使用“rmdir”功能但保留指定目录

发布于 2024-12-02 17:38:22 字数 170 浏览 0 评论 0原文

我想要 rmdir /s 的功能,但我需要保留指定的目录。 rmdir /s 删除除指定目录之外的所有文件和子目录。

我也尝试过使用 del /s 但随后我在指定目录中留下了空文件夹。我也需要删除这些文件夹。

关于如何执行此操作有任何指导吗?

I would like the functionality of rmdir /s but I need to keep the specified directory. rmdir /s removes all files and sub directories in addition to the directory specified.

I've also tried using del /s but then I am left with empty folders in the specified directory. I need those folders removed as well.

Any guidance on how I can do this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

淡淡绿茶香 2024-12-09 17:38:22

最简单的方法是将目录更改为指定目录并在“.”上调用 rd 命令。目录。例如:

cd toYourDirectory (or pushd toYourDirectory)
rd /q /s . 2> nul
  • /q - 确保您不会被提示
  • /s - 执行子文件夹、文件等操作
    在..
  • “.” 上- 暗示当前目录
  • 2>nul - 确保它不会报告
    当 rd 命令尝试删除自身时出现错误(即
    你想要什么)

Easiest way would be to change directory to specified directory and invoke an rd command on the "." directory. Like:

cd toYourDirectory (or pushd toYourDirectory)
rd /q /s . 2> nul
  • /q - ensures you wont be prompted
  • /s - to do subfolders, files, so
    on..
  • the "." - implies CURRENT directory
  • 2>nul - ensures it won't report
    the error when the rd command attempts to remove itself (which is
    what you want)
橘寄 2024-12-09 17:38:22

<3 for 循环

FOR /F "USEBACKQ tokens=*" %%F IN (`dir /b /a:d /s "C:\top\directory\" ^| FIND /v /i "C:\directory\to\omit"`) DO (
 rmdir /s "%%F"
)

,如果您想进行危险的攻击,请使用 /q 开关 w/ rmdir 0.o

所以可以说,您想要执行 remdir /s 位于 C:\Documents and Settings\Mechaflash\ 上,但是您希望保留 .\Mechaflash 文件夹(清空)

FOR /F "USEBACKQ tokens=*" %%F IN (`dir /b /a:d /s "C:\Documents and Settings\Mechaflash\" ^| FIND /v /i "C:\Documents and Settings\Mechaflash\"`) DO (
 rmdir /s "%%F"
)
DEL /Q /F "C:\Documents and Settings\Mechaflash\*"

<3 for loops

FOR /F "USEBACKQ tokens=*" %%F IN (`dir /b /a:d /s "C:\top\directory\" ^| FIND /v /i "C:\directory\to\omit"`) DO (
 rmdir /s "%%F"
)

and if you wish to strike dangerously, use the /q switch w/ rmdir 0.o

So lets say, you want to perform a remdir /s on C:\Documents and Settings\Mechaflash\, HOWEVER you wish to keep the .\Mechaflash folder (emptied)

FOR /F "USEBACKQ tokens=*" %%F IN (`dir /b /a:d /s "C:\Documents and Settings\Mechaflash\" ^| FIND /v /i "C:\Documents and Settings\Mechaflash\"`) DO (
 rmdir /s "%%F"
)
DEL /Q /F "C:\Documents and Settings\Mechaflash\*"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文