使用PowerShell在不同的行

时间:2017-05-04 23:14:33

标签: loops powershell search-keywords

如果我写的内容有点令人困惑,我道歉。

我目前正在尝试编写一个PowerShell脚本,用于在文本文件中搜索关键字。像这样的东西

select-string $inputFile -pattern $templateName | foreach {$_.Line} | out-file $outFile

我正在寻找的关键字构成了必须始终聚集在一起的记录块的一部分。每条记录以相同的值开头,并以相同的值结束。只有每个记录中的值不同,以及0001和...之间的记录号。 9999也可能不同。

  

“0001”, “ABC”, “KVB”, “ZZZ-01”

     

“0010”, “ABC”, “KVB”, “今日”

     

“0066”, “ABC”, “KVB”, “周日”

     

“9999”, “ABC”, “KVB”, “再见”

  

“0001”, “ABC”, “KVB”, “TVY-01”

     

“0008”,“ABC”,“KVB”,“Sky Blue”

     

“0018”,“ABC”,“KVB”,“西太阳”

     

“9999”,“ABC”,“KVB”,“今天3周”

所以我想用脚本实现的是搜索关键字TVY-01,找到后,将0001,0008,00018和9999复制到文本文件中。在上面的示例中,有2个块,所以我只需要复制与找到TVY-01的块相关的4条记录。因为唯一的常量是0001和9999,所以我需要复制这些行以及中间的所有行

我们的想法是在数千条数据记录中扫描一个公共值,每次找到一条数据记录时,将整个记录块复制到一个文件中。

我希望这个解释不会让任何人感到困惑。

由于

DW

0 个答案:

没有答案