【发布时间】:2015-01-09 16:10:20
【问题描述】:
以下只是一个示例,我已经看到很多将 .CSV 文件分解为较小文件的脚本,但在这方面遇到了困难。
我们如何使用 PowerShell,找到由 ALPH 指示的标头,获取每个后续行,在到达 ALPT(包括)时停止并将此文本放入另一个文件中。 该操作需要遍历整个文件,并且 ALPD 或 ALPC 行的数量会有所不同。
ALPH 可以被视为一个标题,而包含的信息是必需的,因为某些字段值可能不同。唯一的常数是 ALPH 和 ALPT。
ALPH;8102014
ALPC;PK
ALPD;50
ALPD;40
ALPT;5
ALPH;15102014
ALPC;PK
ALPD;50
ALPD;50
ALPD;70
ALPD;70
ALPD;71
ALPD;72
ALPD;40
ALPT;6
ALPH;15102014
ALPC;PK
ALPD;50
ALPD;50
ALPD;40
ALPT;6
【问题讨论】:
-
你需要'ALPH;'后面的数字吗?
-
每次都是完整的行。例如:ALPH,08102014 ALPC,PK ALPD,50 ALPD,40 ALPT,5 但是 JPBlanc 提供了一个工作脚本 - 谢谢我会用更多数据进行测试,如果发现任何问题,我会返回谢谢
-
是的,我找到了一种使用 -split 的非常快速的方法,但它省略了 ALPH;* 行。
标签: file powershell csv split