我正在处理一个文本文件,该文件将被导出以显示在数据库中并生成报告。
此文本文件是通过解析客户在我工作的公司的机顶盒中调整的内容创建的。每行的结构如下:
最后一个频道调整:
2016-05-10 22:30:19.282417 ; 10.193.115.63 ; 148.240.175.37 ;Data-- {"preferences":[{"key":"tv.mirada.iptv.navi.lastChannelTuned","value":"THC","basis":"DEVICE"}]} --
最后一个频道和最后一个频道:
2016-05-10 22:30:19.366016 ; 10.25.60.54 ; 148.240.175.37 ;Data-- {"preferences":[{"key":"tv.mirada.iptv.navi.lastVolume","value":12,"basis":"DEVICE"},{"key":"tv.mirada.iptv.navi.lastChannelTuned","value":"QROESTRELLA","basis":"DEVICE"}]} --
Last Channel Tuned and Surf Mode:
2016-05-10 22:30:19.953626 ; 10.85.156.3 ; 148.240.175.37 ;Data-- {"preferences":[{"key":"tv.mirada.iptv.navi.lastChannelTuned","value":"TFLMZN","basis":"DEVICE"},{"key":"tv.mirada.iptv.navi.surfMode","value":"ALL","basis":"DEVICE"}]} --
最后一个频道已调整,最后一个音量和上传模式:
2016-05-10 22:30:48.651843 ; 10.193.158.74 ; 148.240.175.37 ;Data-- {"preferences":[{"key":"tv.mirada.iptv.navi.lastVolume","value":16,"basis":"DEVICE"},{"key":"tv.mirada.iptv.navi.lastChannelTuned","value":"NICK","basis":"DEVICE"},{"key":"tv.mirada.iptv.navi.surfMode","value":"ALL","basis":"DEVICE"}]} ––
我想在“数据库”中显示这些数据,其中包含下一个“属性”:
- 日期
-IP source
-IP destination
-Channel Tuned
我使用PowerShell自动执行此操作。我是PowerShell的新手。然后,我希望将这些信息转换为CSV文件。
有什么想法吗?
问候。
答案 0 :(得分:0)
您的数据采用分号分隔格式。这意味着我们可以使用PowerShell的ConvertFrom-CSV
cmdlet为我们解析数据:)
我将您的一条记录存储为变量$e
,以便进行概念验证。
$e = '2016-05-10 22:30:19.282417 ; 10.193.115.63 ; 148.240.175.37 ;Data-- {"preferences":[{"key":"tv.mirada.iptv.navi.lastChannelTuned","value":"THC","basis":"DEVICE"}]} --'
$e | ConvertFrom-Csv -Header 'Date','SourceIP','DestIP','Data' -Delimiter ';'
和输出
Date SourceIP DestIP Data
---- -------- ------ ----
2016-05-10 22:30:19.282417 10.193.115.63 148.240.175.37 Data-- {"preferences":[{"key":"tv.mirada.iptv.navi.lastChannelTuned","value":"THC","basis":"DEVICE"}]} --
现在您可以轻松地以任何您喜欢的文件格式导出它!
答案 1 :(得分:0)
代码:
Clear-Host
$Input = @"
{
"preferences": [
{ "key":"tv.mirada.iptv.navi.lastChannelTuned" , "value":"THC" , "basis":"DEVICE" }
]
}
"@
$Victim = $Input | ConvertFrom-JSON
$Victim.preferences | Format-Table value -AutoSize
输出:
value
-----
THC
图片:Events