Búsqueda recursiva de archivos usando PowerShell

Resuelto Samselvaprabu asked hace 12 años • 10 respuestas

Estoy buscando un archivo en todas las carpetas.

Copyforbuild.batEstá disponible en muchos lugares y me gustaría buscar de forma recursiva.

$File = "V:\Myfolder\**\*.CopyForbuild.bat"

¿Cómo puedo hacerlo en PowerShell?

Samselvaprabu avatar Dec 30 '11 15:12 Samselvaprabu
Aceptado

Utilice el cmdlet Get-ChildItem con el -Recursemodificador:

Get-ChildItem -Path V:\Myfolder -Filter CopyForbuild.bat -Recurse -ErrorAction SilentlyContinue -Force
Shay Levy avatar Dec 30 '2011 08:12 Shay Levy

Utilizo esto para buscar archivos y luego hago que PowerShell muestre la ruta completa de los resultados:

dir -Path C:\FolderName -Filter FileName.fileExtension -Recurse | %{$_.FullName}

Siempre puedes usar el comodín *en FolderNamey/o FileName.fileExtension. Por ejemplo:

dir -Path C:\Folder* -Filter File*.file* -Recurse | %{$_.FullName}

El ejemplo anterior buscará cualquier carpeta en la C:\unidad que comience con la palabra Folder. Entonces, si tiene una carpeta con nombre FolderFoo, FolderBarPowerShell mostrará los resultados de ambas carpetas.

Lo mismo ocurre con el nombre y la extensión del archivo. Si desea buscar un archivo con una determinada extensión, pero no sabe el nombre del archivo, puede utilizar:

dir -Path C:\FolderName -Filter *.fileExtension -Recurse | %{$_.FullName}

O viceversa:

dir -Path C:\FolderName -Filter FileName.* -Recurse | %{$_.FullName}
BinaryJoe01 avatar Jan 24 '2017 18:01 BinaryJoe01