PowerShell сложение вычитание данных из текста
Имеется файл с данными, в котором указаны фамилии, расход и приход:
Иванов
654.45
1078.21
Петров
246.85
1325.46
375.75
2746.11
Сидоров
456.25
258.41
Надо получить баланс по каждой фамилии
Иванов 423.76
Петров 3448.97
Сидоров -197.84
Расчёт происходит следующим образом:
Иванов -654.45 + 1078.21 = 423.76
Петров -246.85 + 1325.46 - 375.75 + 2746.11 = 3448.97
Сидоров -456.25 + 258.41 = -197.84
Расход/приход идёт парами первая строка расход, вторая приход.
Подскажите, как это можно реализовать средствами Powershell?
Ответы (1 шт):
Автор решения: motpfofs
→ Ссылка
Это явно не самое оптимальное решение, но рабочее:
$datafile="c:\ffmpeg\1.txt"
$datalines = Get-Content $datafile
for($i=0; $i -le $datalines.Length;)
{
$name = $datalines[$i]
$i=$i+1
[double]$difference = 0
Do{
$difference = $difference - ($datalines[$i] -as [double]) + ($datalines[$i+1] -as [double])
$i=$i+2
}While([double]::TryParse($datalines[$i] , [ref]$b ))
Write-Host ($name, $difference)
}
