如何访问数组中的标头信息

时间:2014-03-14 16:17:07

标签: arrays powershell csv

首先,我是PowerShell的新手,并且编写了许多不同语言的代码。我的大多数经验都来自java,所以我通常会从那个背景格式化我的代码,所以如果它看起来很疯狂,我会道歉。

我正在尝试创建一个脚本,我可以针对将每个对象加载到数组中的CSV运行。我想检查每个对象,以确保它附有一个电子邮件地址,名字和姓氏。我们目前正在手动删除无效条目。

我正在使用下面的代码。我正在尝试导入CSV。我想读取数组中的每个元素并删除不符合我标准的条目,然后我想将其导出为CSV。我对数组中对象的外观感到困惑,如何检查每个对象中的信息是否为空。对逻辑的任何帮助都会很好。 CSV下面列出了标题,但我只关心上面列出的onces。谢谢, “     $ csv =读取主机“输入CSV的文件路径”

$CsvArray = Import-Csv $csv -Header Lastname,Firstname,Department,Phonenumber,Email

  foreach ($i in $CsvArray)
   {
     Write-Host $CsvArray($i)

  if(Lastname -eq $NULL) -or (firstname -eq $NULL) -or (Email -eq $NULL)
     {
       Delete $i from array 
      }
  else
     {
     $i
     }
 } 

 $csvArray | Export-Csv c:\emaillist.txt -force


 Write-Host "Press any key to continue ..."

$x = $host.UI.RawUI.ReadKey("NoEcho,IncludeKeyDown")

`

1 个答案:

答案 0 :(得分:0)

$CsvArray = Import-Csv $csv -Header Lastname,Firstname,Department,Phonenumber,Email |
Where-Object { $_.Lastname -ne $null -and $_.Firstname -ne $null -and $Email -ne $null } |
Export-Csv C:\emaillist.txt -force