我想使用PS读取数据文件并在Excel中创建图表。
在excel中,我可以打开一个文本文件并创建Linux系统资源的折线图,如下所示:
下一步
我从StackOverflow复制了代码,并添加了我的数据文件。 [$ Data = Get-Content“ C:\ Users ... \ log.txt” -Raw](Complete Code I used here)
那么我如何读取数据文件并在PS中创建折线图?
[最终我想使这个过程自动化]
注意: 数据文件如下:
Memory Disk CPU
4.96% 70% 0.44%
4.96% 70% 0.41%
4.96% 70% 0.45%
etc, etc
答案 0 :(得分:1)
您应该最好将日志文件转换为数组,而不是仅导入原始数据:
$Data = Import-csv "C:\Users...\log.txt" -Delimiter "`t"
(假设这是一个制表符分隔的文件)
您在Excel中看到的数据不是没有用的,它只是使用Get-Content cmdlet创建的PSObject的属性,这是ConvertTo-CSV cmdlet的正常行为,该行为在您正在使用的代码中使用下面引用的行:
$Data |ConvertTo-CSV -NoTypeInformation -Delimiter "`t"| c:\windows\system32\clip.exe
从help:
从CSV转换的对象是原始对象的字符串值,其中包含属性值且没有方法。
您也可以跳过转换。
使用 Get-Content 保留导入:
$Data=Get-Content "C:\Users...\log.txt" -Raw
并删除 ConvertTo-Csv :
$Data | c:\windows\system32\clip.exe