在CMD Search中排除Windows文件夹

时间:2019-03-04 07:50:44

标签: windows batch-file

我对批处理文件还很陌生,但这是我的批处理文件,用于显示Jpegs,Mp3,Mp4等的路径。

@echo off
setlocal
cd /d C:\
Echo
echo Files Paths :
dir /b *.mp3 /s
dir /b *.mp4 /s
dir /b *.jpg /s
endlocal
pause

1。)无论如何,我可以从搜索中排除Microsoft和Windows(墙纸,图标,声音等)文件夹吗?

2。)如何将结果保存到此输出文件(已创建)C:\ output.txt

谢谢!

1 个答案:

答案 0 :(得分:2)

对于findstr command来说,这是一项非常简单的任务:

dir /S /B /A:-D *.mp3 *.mp4 *.jpg | findstr /V /I /C:"\\Microsoft\\" /C:"\\Windows\\" > "C:\output.txt"

\\代表一个文字\,以确保仅排除其全名与预定义名称匹配的目录。由于findstr使用\作为转义字符,因此\\是必需的。

如您所见,没有必要使用多个dir commands。过滤器选项/A:-D排除了任何要返回的目录,即使它们与给定模式之一匹配。

使用redirection将返回的数据写入文件。要附加到文件而不是覆盖文件,请将>替换为>>