我希望使用命令行在Windows中的目录和所有子目录中搜索文件。我看到了所有可用的命令,但找不到任何合适的命令来执行此操作。
我希望使用命令行在Windows中的目录和所有子目录中搜索文件。我看到了所有可用的命令,但找不到任何合适的命令来执行此操作。
Answers:
在提示符(命令行)中输入:
dir /S /P "Path\FileName"
如果要将结果保存在文本文件中:
dir /S "Path\FileName" > "Path\ResultFilename"
/s
进行搜索,而显示/p
一屏有价值的结果后的暂停。对于更多的选择,你可以做dir /?
。
/s
选项不会“进行搜索”。它扩展了dir
命令(默认情况下会列出当前文件夹中的文件)以列出所有子文件夹中的所有文件。这扩大了dir
命令的范围,可以绝对列出驱动器或文件夹中的所有内容,而不仅限于当前的内容。
dir
本来不是用于搜索文件而是用于列出目录,但是现在where
可以用来搜索多种文件类型,例如
where /R c:\Users *.dll *.exe *.jpg
请检查完整的语法以及如何在cmd中执行简单文件搜索 的答案
WHERE [/R dir] [/Q] [/F] [/T] pattern...
Description:
Displays the location of files that match the search pattern.
By default, the search is done along the current directory and
in the paths specified by the PATH environment variable.
Parameter List:
/R Recursively searches and displays the files that match the
given pattern starting from the specified directory.
/Q Returns only the exit code, without displaying the list
of matched files. (Quiet mode)
/F Displays the matched filename in double quotes.
/T Displays the file size, last modified date and time for all
matched files.
pattern Specifies the search pattern for the files to match.
Wildcards * and ? can be used in the pattern. The
"$env:pattern" and "path:pattern" formats can also be
specified, where "env" is an environment variable and
the search is done in the specified paths of the "env"
environment variable. These formats should not be used
with /R. The search is also done by appending the
extensions of the PATHEXT variable to the pattern.
/? Displays this help message.
NOTE: The tool returns an error level of 0 if the search is
successful, of 1 if the search is unsuccessful and
of 2 for failures or errors.
Examples:
WHERE /?
WHERE myfilename1 myfile????.*
WHERE $windir:*.*
WHERE /R c:\windows *.exe *.dll *.bat
WHERE /Q ??.???
WHERE "c:\windows;c:\windows\system32:*.dll"
WHERE /F /T *.dll