从CSV中删除额外行

时间:2015-05-12 13:35:06

标签: regex powershell csv

我有CSV文件,我试图从CSV顶部删除额外的行(不确定它将有多少行),然后在CSV中间的行说出SourceIP,DestinationIP等

enter image description here

我尝试了以下内容:

$m = gc D:\Script\textfile.txt
Select-String D:\Script\my.csv -pattern $m -Match 

textfile.text有

*.*.*.*

但我得到错误,

Select-String : A parameter cannot be found that matches parameter name 'Match'.

我如何匹配我想要(或不想要)的字符串,因为我希望得到的CSV是

enter image description here

1 个答案:

答案 0 :(得分:3)

使用Import-Csv cmdlet:

Import-Csv YourFileLocation -Header SourceIP, DestinationIP, Application |
     where {$_.SourceIP -match "^[0-9]+"} | Export-Csv OutputFile.csv 

它允许您设置自定义标题名称,然后您可以通过SourceIP标题进行正则表达式搜索,并使用以#开头的 内容。如果已完成,您可以使用Export-Csv将其吐出。