Este artículo cubrirá una guía para recorrer un directorio usando PowerShell.
¿Cómo recorrer archivos en un directorio usando PowerShell?
El PowerShell puede recorrer archivos en el directorio usando el ' Para cada() ' bucle. El bucle 'Foreach()' se utiliza para procesar todos los elementos a la vez, como cambiar el nombre o copiar varios archivos. Mientras que la ' Foreach-Objeto() ” cmdlet se refiere a un elemento a la vez en un bucle. Procesa un elemento a la vez.
Ejemplo 1: recorrer archivos utilizando 'Foreach-Object' en el script de PowerShell
En este ejemplo, recorreremos los archivos en un directorio usando PowerShell e imprimiremos el nombre de los archivos disponibles dentro de ese directorio:
Obtener elemento secundario 'C:\Doc' |
Objeto Foreach {
$_ .Nombre completo
}
Según el código anterior:
- Primero, agregue el ' Obtener elemento secundario junto a la ruta del directorio para obtener los archivos disponibles dentro de ese directorio.
- Después de eso, use el ' | ” tubería para transferir la salida a la “ Foreach-Objeto() ” cmdlet para operar contra cada elemento en la colección de objetos de entrada.
- Añade el ' $_.Nombre completo cmdlet para mostrar el nombre de los archivos recuperados del directorio:
Se puede observar que los archivos del directorio han sido desplegados en la consola de PowerShell usando el “ Foreach-Objeto() ' bucle.
Ejemplo 2: recorrer archivos utilizando 'Foreach-Object' con '-Recurse' en PowerShell Script
Ahora, recorra los subdirectorios usando el ' -Recurse ” parámetro:
Se puede observar que los archivos de los subdirectorios también se han mostrado en la consola de PowerShell.
Ejemplo 3: recorrer archivos usando 'Foreach-Object' en la consola de PowerShell
Para realizar la misma operación, en primer lugar, veamos los archivos disponibles antes de eliminar el seleccionado en el directorio respectivo usando el botón “ Obtener elemento secundario ” cmdlet junto a la ruta del directorio:
> Obtener elemento secundario 'C:\Doc'
Los archivos disponibles en el directorio se han mostrado en la consola de PowerShell.
Ahora, eliminemos los archivos con el ' .TXT ” extensión usando el “ Foreach-Objeto() ”bucle en PowerShell:
Obtener elemento secundario 'C:\Doc' * .ps1 |Objeto Foreach {
Remover el artículo $_ .Nombre completo
}
Según el código anterior:
- Primero, agregue el ' Obtener elemento secundario ” cmdlet seguido de la ruta del directorio y el “ *.ps1 extensión ” para seleccionar los archivos con la extensión “ .ps1 ' extensión.
- Después de eso, use el ' | ” tubería para transferir la salida a la “ Foreach-Objeto() ' bucle.
- Dentro de ' Foreach-Objeto() ” bucle, agregue el “ Remover el artículo ” cmdlet para eliminar los archivos recuperados por el “ $_.Nombre completo ' propiedad:
Ahora, verifiquemos si los archivos se eliminaron o no al obtener los archivos en el directorio:
> Obtener elemento secundario 'C:\Doc'
Como puede ver, los archivos con el ' .TXT ” se han eliminado mediante un bucle en PowerShell.
Conclusión
Para recorrer los archivos en un directorio “ Foreach-Objeto() El bucle ” se usa en PowerShell. Procesa y hace referencia a un elemento a la vez de una colección de elementos u objetos. Además, ayuda a eliminar, renombrar o copiar varios archivos. Este artículo ha cubierto una guía completa para recorrer los archivos en un directorio usando PowerShell.