2017-09-18 1 views
0
#My script is as below 
$empdata = import-csv Log.csv 
    ForEach ($Item in $empdata){ 
    "FirstName = $($empdata.FirstName) 
    LastName = $($empdata.LastName) 
    Laptop = $($empdata.Laptop) 
    AccessCard = $($empdata.AccessCard) 
    Phone = $($empdata.Phone) 
    Building = $($empdata.Building) 
    Location = $($empdata.Location)" 
    Write-host $FirstName $LastName $Laptop $AccessCard $Phone $Building 
    $Location 

Je veux lire les données de chaque ligne dans un tableau et de le transmettre à un autre outil, mais incapable de le faire depuis que je reçois des données de toutes les colonnes de données exemple l'ensemble de la colonne 1 apparaît ..lire les données du fichier csv en utilisant Powershell et strore chaque donnée de ligne dans un tableau

les résultats sont comme ci-dessous

FirstName = Suresh Krishna Shiva 
LastName = setty Murthy Reddy 
Laptop = Lenovo Lenovo Hp 
AccessCard = yes No Yes 
Phone = 123456789 45678932 12378945 
Building = T4 P1 DT14 
Location = Chennai Bangalore Hyderabad 
FirstName = Suresh Krishna Shiva 
LastName = setty Murthy Reddy 
Laptop = Lenovo Lenovo Hp 
AccessCard = yes No Yes 
Phone = 123456789 45678932 12378945 
Building = T4 P1 DT14 
Location = Chennai Bangalore Hyderabad 
FirstName = Suresh Krishna Shiva 
LastName = setty Murthy Reddy 
Laptop = Lenovo Lenovo Hp 
AccessCard = yes No Yes 
Phone = 123456789 45678932 12378945 
Building = T4 P1 DT14 
Location = Chennai Bangalore Hyderabad 

I am trying to get data in the below format 


FirstName = Suresh 
LastName = setty 
Laptop = Lenovo 
AccessCard = yes 
Phone = 123456789 
Building = T4 
Location = Chennai  
+2

Vous avez votre objet pipeline comme '$ Item' mais ne l'utilise pas dans le bloc foreach – Matt

+0

Nous ne savons pas ce qu'il y a dans votre fichier CSV. S'il vous plaît [cliquez ici et éditez votre question] (https://stackoverflow.com/posts/46286784/edit) pour inclure un échantillon. – sodawillow

+0

Merci Matt got it..changed code à FirstName = $ ($ ID.FirstName) – SCode

Répondre

0
$empdata = Import-Csv Log.csv 

foreach ($item in $empdata) { 
    "FirstName = $($item.FirstName) 
    LastName = $($item.LastName) 
    Laptop = $($item.Laptop) 
    AccessCard = $($item.AccessCard) 
    Phone = $($item.Phone) 
    Building = $($item.Building) 
    Location = $($item.Location)" 
} 

$empdata.FirstName = FirstName toute la colonne (toutes les rangées)

$item.FirstName = la valeur FirstName pour la ligne courante dans votre foreach itération

$FirstName $LastName $Laptop $AccessCard $Phone $Building $Location: ce sont tous nuls dans votre exemple (et non nécessaire pour produire la sortie que vous voulez)

0
#classiq method 
import-csv "c:\temp\test.csv" | %{ 
    "FirstName=$($_.FirstName)" 
    "LastName=$($_.LastName)" 
    "Phone=$($_.Phone)" 
} 

#other method with format 
import-csv "c:\temp\test.csv" | %{ 
    "FirstName={0}`nLastName={1}`nPhone={2}" -f $_.FirstName, $_.LastName, $_.Phone 
}