Búsqueda recursiva de archivos con PowerShell
- 
          
            Use el cmdlet Get-ChildItemcon el interruptor-Recurseen PowerShell para buscar archivos de forma recursiva
- 
          
            Use el cmdlet dircon el interruptor-Recurseen 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
- Cómo crear un archivo de texto usando Windows PowerShell
- Cómo obtener la versión del archivo en PowerShell
- Cómo subir archivos con FTP en PowerShell
- Cómo agregar datos a un archivo usando PowerShell
- Cómo almacenar el contenido de un archivo de texto en una variable usando PowerShell
- Consulta de la última hora de escritura del archivo en PowerShell
