¿Puedo usar CMD para buscar archivos en Windows?


27

Quiero un comando para buscar un archivo en un directorio y todos los subdirectorios en Windows usando la línea de comando. Vi todos los comandos disponibles pero no pude encontrar ningún comando adecuado para realizar esta operación.

Respuestas:


36

En el indicador (Línea de comando) escriba:

dir /S /P "Path\FileName"

Si desea guardar los resultados en un archivo de texto:

dir /S "Path\FileName" > "Path\ResultFilename"

3
Si el archivo está oculto o es un archivo del sistema, ¡es posible que también desee incluir el parámetro / a! 8-)
Richard Lucas

Un poco más de información: /shace una búsqueda, mientras que /pse muestran las pausas después de una pantalla de resultados. Para más opciones puedes hacer dir /?.
Lucas

1
La /sopción no "hace una búsqueda". Extiende el dircomando, que enumera los archivos en la carpeta actual de manera predeterminada, para enumerar todos aquellos en cualquier subcarpeta, también. Esto amplía el diralcance del comando para enumerar absolutamente todo en una unidad o carpeta en lugar de limitarse a la actual.
Hashim

16

puede ser útil usar el /binterruptor para dirimprimir la ruta completa. decir,C:\ > dir /b /s *file*.*

aún así, puede filtrar el resultado con findo for, y redirigir la salida al archivo con>filename


2

dirno estaba destinado a buscar archivos sino a enumerar directorios, pero ahora existe el whereque se puede usar para buscar múltiples tipos de archivos como where /R c:\Users *.dll *.exe *.jpg

Verifique la sintaxis completa y la respuesta para Cómo hacer una búsqueda simple de archivos en 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 
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.