我试图做一些在Powershell中应该很简单的事情,但我不能为我的生活弄清楚。我有一个如下所示的日志文件:
item1:some text 1:more junk I don't care about.
item2:some text 2:more junk I don't care about.
item3:some text 3:more junk I don't care about.
...
我想使用Powershell拆分“:”,抓住前两个项目,然后以某种方式将结果转换为我可以管道格式化表格的东西。最终结果将输出如下:
Column A Column B
-------- --------
item1 some text 1
item2 some text 2
item3 some text 3
...
我绝不是Powershell专家,所以请随时清理我的代码。这就是我现在所拥有的(我尝试了几种变体):
Get-Content C:\Temp\test.log | %{
$data = $_.split(":");
$hashString = 'a = ' + $data[0] + " `n b = " + $data[1];
ConvertFrom-StringData -StringData $hashString
} | ft @{Label="Column A"; Expression={$_.a}}, @{Label="Column B"; Expression={$_.b}} -auto
提前致谢。
答案 0 :(得分:4)
我会使用Import-Csv ......:)
Import-Csv -Path your.log -Delimiter : -Header ColumnA, ColumnB
您可以使用任何字符作为分隔符,包括冒号。