Importación de PowerShell-CSV | Ejemplos de importación de PowerShell-CSV
Introducción a la importación CSV de PowerShell
El cmdlet import-csv se utiliza para recuperar la información contenida en un archivo separado por comas y crear una estructura similar a una tabla. Una vez que se importan los datos, se utiliza un cmdlet foreach para iterar el contenido del csv en forma de filas. No es necesario importar todo el contenido del archivo, es posible aplicar condiciones de filtro y recuperar solo los valores necesarios. Este artículo cubrirá en detalle cómo importar un csv en powershell, ordenar y filtrar un archivo csv y las diferentes formas en que se puede lograr.
Sintaxis y parámetros
La sintaxis y los parámetros de powershell import-csv se detallan a continuación:
Sintaxis:
Import-Csv [[-Delimiter] <Char>] [-Path] <String[]> [-Header <String[]>] [-Encoding <Encoding>] [<CommonParameters>]
Import-Csv [[-Delimiter] <Char> -LiteralPath <String[]> [-Header <String[]>] [-Encoding <Encoding>] [<CommonParameters>]Una vez que se importa el archivo csv, cada columna del archivo csv se considera como una propiedad de objeto y los valores de cada fila corresponden a los valores de la propiedad.
Parámetros:
- -Delimitador: Denota la marca o carácter que se utilizará para separar los valores en el archivo csv. Para un archivo csv, el valor predeterminado del delimitador es una coma (“,”). También se pueden utilizar otros valores como dos puntos (“:”) o punto y coma (“;”). Si el delimitador proporcionado no coincide con el delimitador presente en el archivo, los valores no se importarán y no se crearán los objetos correspondientes. Este parámetro es del tipo de datos char. Este parámetro no permite la entrada de canalización ni los caracteres comodín.
- -Codificación: Esto significa el instrumento de codificación que se utilizará para el archivo csv especificado. El tipo de datos de este parámetro es codificación. El parámetro no reconoce la entrada de canalización y, además, no se permiten caracteres comodín. El tipo de codificación predeterminado utilizado es UTF8NoBOM.
Los otros valores aceptables son los siguientes:
- Unicodes bigendianos
- OEM
- utf8BOM
- utf8NoBOM
- utf7
- utf8
- utf32
- ASCII
Ejemplos de importación de PowerShell-CSV
A continuación se presentan los ejemplos mencionados:
Ejemplo #1
Entrada:
Write-Host "Welcome to the demo of Importing a csv file in PowerShell"
$file= Import-Csv -Path "C:\test.csv"
$i=0
foreach ($f in $file)
{
if ($i -lt 10)
{
Write-Host "base name is:" $f.BaseName
Write-Host "Full name is:" $f.FullName
Write-Host "name is:" $f.Name
Write-Host "Created date is:" $f.CreationTime
Write-Host "Modified date is:" $f.LastAccessTime
Write-Host "Location of the file drive is:" $f.PSDrive
$i+=$i
}
}Salida:
En el ejemplo anterior, archivo el archivo csv se importa y se almacena en la variable de archivo. Luego, se repite cada fila del archivo csv. $f denota la fila actual del csv al que se accede y para acceder a los valores de fila correspondientes $f. Se utiliza el encabezado o columna correspondiente.
Ejemplo #2
Entrada:
Write-Host "example of reading a csv completely but displaying result based only on the users input"
$studentid= Read-Host "Enter the student roll no to fetch the student details"
Write-Host "Importing the csv file"
$file= Import-Csv -Path "C:\Users\R003646\Desktop\Articles\June\Student.csv"
Write-Host "File is imported successfully"
foreach ($row in $file)
{
if ($row.Sid -contains $studentid)
{
Write-Host "the mentioned student id is valid and his details are as follows" -ForegroundColor Green
Write-Host "Student name is:" $row.Sname
Write-Host "Student age is:" $row.Sage
Write-Host "Student id is:" $row.Sid
Write-Host "Student rank is:" $row.Srank
}
else
{
Write-Host "Enter a valid student id"
break;
}
}Salida:
En el ejemplo anterior, se promociona al usuario según los detalles del estudiante que desea ver. Si se ingresa el número de lista de un estudiante válido que está disponible en el csv, se muestran los detalles del estudiante correspondiente. En caso de que el número de lista de estudiantes ingresado no esté presente en el csv, se muestra el segundo resultado.
Ejemplo #3
Entrada:
Write-Host "Importing a csv and displaying the list of data in each column"
$file= Import-Csv -Path "C:\Users\R003646\Desktop\Articles\June\Student.csv"
Write-Host "file is imported" -ForegroundColor Green
write-host "The list of student name in the csv are as follows:" -ForegroundColor Green
$file.Sname
write-host "The list of student age in the csv are as follows:" -ForegroundColor Green
$file.Sage
write-host "The list of student marks in the csv are as follows:" -ForegroundColor Green
$file.Smarks
write-host "The list of student id in the csv are as follows:" -ForegroundColor Green
$file.Sid
write-host "The list of ranks in the csv are as follows:" -ForegroundColor Green
$file.SrankSalida:
Conclusión
Por lo tanto, el artículo explica en detalle sobre el cmdlet import-CSV en PowerShell. Explicó en detalle varios parámetros, su tipo de datos y su sintaxis junto con ejemplos apropiados. Para conocer más detalladamente es recomendable escribir guiones de muestra y practicarlos.





