我无论如何都不是高级脚本编写者,但我有一项工作需要完成的任务。任务是创建一个脚本,该脚本查看目录中包含的每个报告文件中的两条信息(以字节为单位的日期和容量)。这两条信息位于每个报告的相同位置。然后,使用日期值,脚本可以报告每个月的最高容量利用值。我想最终输出是HTML格式。
获取日期值有两种选择。该报告包含第3行文本中mm / dd / yyyy格式的日期,时间作为Epoch时间包含在文件名中。
到目前为止,我已经整理了一个PowerShell脚本,用于解析报告正文中使用的日期和容量。然后将此信息添加到数组中。
我正在寻找关于哪个日期值更好使用的指导(来自文件名的纪元时间或来自报告正文的日期)以及最适合用于查看每个月的数据并报告最高的方法每月的产能利用率。
到目前为止,这是我的脚本:
#Construct an array to use for data export
$fileDirectory = "c:\Temp"
$Array1 = @()
foreach ($file in Get-ChildItem $fileDirectory)
{
#Obtain path to each file in directory
$filePath = $fileDirectory + "\" + $file
#Get content of each file during the loop
$data = Get-Content $filePath
#Create object to enter data into Array1
$myobj = "" | Select "Date","Capacity"
$dateStr = ($data[2].Split(" "))[3]
[long]$capacityStr = ($data[19].Split(","))[2]
[single]$CapacityConv = $capacityStr
$capacityConv = ($capacityConv /= 1099511627776)
#Fill the object myobj
$myobj.date = $dateStr
$myobj.capacity = $capacityConv
#Add the object to Array1
$Array1 += $myobj
#Wipe the object
$myobj = $null
}
#After the loop, export the array to CSV file
$Array1 | export-csv "c:\Scripts\test-output.csv"
$Array1
pause