繁体   English   中英

批处理脚本列出文件夹但排除特定文件夹

[英]Batch script to list folders but exclude specific folders

我希望此脚本列出文件夹名称中包含“已删除”的所有文件夹,但如果它们位于名为“done”的文件夹中则不会。

例如:列出文件夹,如果它在C:\\temp ,如果它在C:\\temp\\random_folder_name但如果它在C:\\temp\\done则不是

dir /s "C:\temp" | findstr "\deleted"

简短的故事,排除所有名为“完成”的文件夹及其内容。

你快到了。

Findstr / v返回所有不包含字符串的行

dir / ad只显示目录(Atrribut = Directory)

dir /s /ad "C:\temp" | findstr "\deleted" | findstr /v "\done"
dir /s "C:\temp" | findstr "\deleted"|findstr /i /v "\temp\done\"

应该适合这个账单

  • 如果要省略任何已经“完成”作为路径目录的名称,请删除\\temp部分

在很多情况下:

dir /b /s /aa <path>

会做的伎俩。 / b表示较小的输出,/ s表示递归(子目录),/ aa表示只准备存档的文件。 这通常是正常创建文件的情况 - 默认为开启!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM