【发布时间】:2019-06-17 22:09:51
【问题描述】:
我有两个 PowerShell 脚本:
-
制作每日平均备份的虚拟机数量并将其保存到 .txt 文件中:
$file = "E:\PS\Malik\valeurs.txt" $success_rate = 100 - ($nbckp_vms * 100 / $total_vms) $success_rate_round = [Math]::Round($success_rate,2) #Exported into the $file path Add-Content -Path $file -Value "$success_rate_round,$total_vms,$nbckp_vms" # $text = Get-Content -path $file # Backup rate for production KPI $body = $body + "`r`n" + "*** Backup success rate for production KPIs ***" + "`r`n" $body = $body + "`r`n" + "Daily success rate = $success_rate_round%" $body = $body + "`r`n" + "Total VMs = $total_vms" $body = $body + "`r`n" + "Daily unbacked up VMs = $nbckp_vms" + "`r`n" 用这个 .txt 文件的值做一个月平均数。
这就是问题所在。问题出在这部分。
我想对这两个脚本进行升级,包括平均虚拟机数量和非备份虚拟机的平均数量。所以我这样做了:
$csv1 = Import-Csv -Path $path -Delimiter ','
$moy = $csv1.moy | measure -Average | select -expand average
$nb_total_vms = $csv1.nb_total_vms | measure -Average | select -expand average
$nbackedup_vms = $csv1.nbackedup_vms | measure -Average | select -expand average
Write-Host "moy = $moy / $nb_total_vms / $nbackedup_vms"
但是由于这个脚本每个月都会启动,所以我不能让我的第一行像“moy,nb_total_vms,nbackedup_vms”,而是我有值,然后是这一行。如果我把它放在我的其他脚本上,我将有这样的每一行:
价值 moy,nb_total_vms,nbackedup_vms 价值 moy,nb_total_vms,nbackedup_vms等等。
我想将这一行 (moy,nb_total_vms,nbackedup_vms) 始终写在 .txt 文件的第一行。
【问题讨论】:
标签: powershell