Leer archivo CSV línea por línea en PowerShell

Leer archivo CSV línea por línea en PowerShell

En el artículo anterior, analizamos la lectura de archivos separados por comas o datos CSV y su ubicación en una variable de matriz mediante PowerShell. ¿Qué pasa si queremos leer todos los datos del archivo CSV línea por línea? Este artículo muestra cómo recorrer el CSV de PowerShell línea por línea.

Use foreach() para leer el archivo CSV línea por línea en PowerShell

Usemos los datos de muestra de nuestro archivo CSV anterior en nuestro último artículo como ejemplo.

Datos de muestra (archivo sample.csv):

Name,Salary
John,1001
Paul,2001
Mary,1501
Matt,3001

Si recordamos, el comando “Importar-CSV” en Windows PowerShell creará una tabla como objetos personalizados y la guardará en una “Lista de matrices” a partir de los elementos presentados en el archivo CSV anterior.

Dado que PowerShell transforma convenientemente nuestro CSV en un objeto, podemos usar el bucle foreach para iterar a través de todo el CSV.

Código de ejemplo:

$csv = Import-CSV C:\PS\sample.csv
foreach ($line in $csv){
    $line
}

Ahora, con el bucle en su lugar, podemos procesar convenientemente el archivo CSV línea por línea y llamar a sus atributos individualmente por línea.

Código de ejemplo:

$csv = Import-CSV C:\PS\sample.csv
foreach ($line in $csv){
    $line.Name
    $line.Salary
}

Producción :

John
1001
Paul
2001
Mary
1501
Matt
3001
Marion Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

Artículo relacionado - PowerShell File