【发布时间】:2018-02-16 15:41:10
【问题描述】:
我有多个要导出为 CSV 的大型日志文件。首先,我只想拆分两个部分,日期和事件。我遇到的问题是并非每一行都以日期开头。
这是一个示例日志块。日期/时间始终为 23 个字符。其余部分因日志和事件描述而异。
我希望最终结果在 excel 中看起来像这样。
这是我迄今为止尝试过的,但只返回每行的前 23 个字符。
$content = Get-Content myfile.log -TotalCount 50
for($i = 0; $i -lt $content.Length; $i++) {
$a = $content[$i].ToCharArray()
$b = ([string]$a[0..23]).replace(" ","")
Write-Host $b }
【问题讨论】:
-
能否请您发布部分登录文本,以便我尝试一下
-
2017-09-04 12:31:11.343 General BOECD:: ProcessStartTime: Word: Length 3 [0917 1204 3029] Hex: Length 6 [17 09 04 12 29 30]。显示:错误 2017-09-04 12:31:11.479 一般 MelsecIoWrapper:扫描结束:设备:1,ScanStart:9/4/2017 12:31:10 PM 显示:错误 2017-09-04 12:31:11.705 一般BOECD:: ProcessEndTime:字:长度 3 [0917 1204 0931] 十六进制:长度 6 [17 09 04 12 31 09]。显示:False 2017-09-04 12:31:13.082 General BOECD::DV 数据:
-
注意:在实际的日志文件中,日期总是像上图一样开始一行。当我粘贴示例时,它只是将所有内容都包装在一起。
-
你应该edit你的问题并将示例文本放在那里而不是回复它。如果不是因为您刚刚遇到的格式问题。
标签: string powershell csv parsing