Búsqueda recursiva de archivos con PowerShell
-
Use el cmdlet
Get-ChildItem
con el interruptor-Recurse
en PowerShell para buscar archivos de forma recursiva -
Use el cmdlet
dir
con el interruptor-Recurse
en PowerShell para buscar archivos de forma recursiva
A veces, guardamos un archivo en una computadora y olvidamos dónde lo guardamos. Hay diferentes formas de buscar archivos en la computadora. Uno de ellos es PowerShell, que le permite enumerar archivos y directorios presentes en una ubicación específica.
Este tutorial le enseñará a buscar archivos recursivamente usando PowerShell.
Use el cmdlet Get-ChildItem
con el interruptor -Recurse
en PowerShell para buscar archivos de forma recursiva
El cmdlet Get-ChildItem
muestra una lista de archivos y directorios en la ubicación específica. No muestra directorios vacíos cuando se usa con el parámetro -Recurse
.
Por ejemplo, el siguiente comando muestra la lista de archivos y directorios presentes en el directorio C:\pc
.
Get-ChildItem -Path C:\pc
Producción :
Directory: C:\pc
Mode LastWriteTime Length Name
---- ------------- ------ ----
d----- 1/2/2022 2:53 PM computing
d----- 1/2/2022 1:24 PM New folder
-a---- 1/2/2022 1:36 PM 17384 hello
-a---- 1/2/2022 2:48 PM 5134 matrix.c
-a---- 12/26/2020 7:03 PM 321 ReadMe.txt
Con el parámetro -Recurse
, puede obtener los archivos de todos los directorios o subdirectorios de las ubicaciones especificadas. Significa que puede buscar los archivos de forma recursiva en una ubicación específica utilizando PowerShell.
Get-ChildItem -Path C:\pc -Filter car.png -Recurse -ErrorAction SilentlyContinue -Force
Como puede ver a continuación, el car.png
se encuentra en el directorio C:\pc\computing\task4
. Mostrará todos los archivos car.png
si se encuentran en varios directorios.
Producción :
Directory: C:\pc\computing\task4
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 1/3/2022 2:26 PM 3465 car.png
Si no conoce el nombre del archivo, puede buscar todos los archivos con la misma extensión de archivo. Por ejemplo, el siguiente comando mostrará todos los archivos que tengan la extensión .txt
en el directorio C:\pc
.
Get-ChildItem -Path C:\pc -Filter *.txt -Recurse -ErrorAction SilentlyContinue -Force
La salida que se muestra suele ser grande porque incluye la Path
, Mode
, LastWriteTime
, Length
y Name
de un archivo. Solo puede mostrar la ruta de un archivo usando | %{$_.NombreCompleto}
.
Get-ChildItem -Path C:\pc -Filter *.txt -Recurse -ErrorAction SilentlyContinue -Force | %{$_.FullName}
Producción :
C:\pc\ReadMe.txt
C:\pc\computing\task1\MatrixA.txt
C:\pc\computing\task3\password.txt
Use el cmdlet dir
con el interruptor -Recurse
en PowerShell para buscar archivos de forma recursiva
El cmdlet dir
es un alias para Get-ChildItem
. También muestra una lista de archivos y directorios en la ubicación específica.
dir -Path C:\pc -Filter password.txt -Recurse
Producción :
Directory: C:\pc\computing\task3
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 1/7/2022 3:43 PM 18 password.txt
Artículo relacionado - PowerShell File
- Almacene el contenido del archivo de texto en variable usando PowerShell
- Consulta de la última hora de escritura del archivo en PowerShell
- Desbloquear archivos usando PowerShell
- Dividir archivo grande en PowerShell
- Leer archivo CSV línea por línea en PowerShell
- Buscar archivos con extensión en PowerShell