5

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

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

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

短篇小说,排除所有名为“完成”的文件夹及其内容。

4

3 回答 3

10

你快到了。

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

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

dir /s /ad "C:\temp" | findstr "\deleted" | findstr /v "\done"
于 2013-03-22T11:06:06.637 回答
1
dir /s "C:\temp" | findstr "\deleted"|findstr /i /v "\temp\done\"

应该符合要求

  • \temp或者如果您想省略任何在路径上作为目录“完成”的名称,请删除该部分
于 2013-03-22T11:01:28.500 回答
0

在很多情况下:

dir /b /s /aa <path>

Will do the trick. /b for less verbose output, /s for recursive (sub directories) and /aa for only files ready to be archived. This is usually the case for normal created files - it defaults to on!

于 2017-09-02T18:11:34.300 回答