Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Переименование дублей в csv файле (http://forum.oszone.net/showthread.php?t=330638)

YURETZS 20-10-2017 10:31 2771955

Переименование дублей в csv файле
 
Доброго времени суток.
Имеется csv-файл следующего содержания:

Name;ExternalEmailAddress;FirstName;LastName
Иванов Иван Иванович;ivanov@dom.ru;Иванов;Иван
Иванов Иван Иванович;iii@dom.ru;Иванов;Иван
Иванов Иван Иванович;ivanov.ivan@dom.ru;Иванов;Иван

Нужно в этом файле переименовать дубли в поле Name

На выходе должно быть

Name;ExternalEmailAddress;FirstName;LastName
Иванов Иван Иванович;ivanov@dom.ru;Иванов;Иван
Иванов Иван Иванович2;iii@dom.ru;Иванов;Иван
Иванов Иван Иванович3;ivanov.ivan@dom.ru;Иванов;Иван

Как это оптимально реализовать в PowerShell?

Kazun 20-10-2017 10:58 2771959

Код:

Get-Content user.csv | Group {$_.split(";")[0]} | Foreach {
        if($_.Count -gt 1) {
                $_.Group | Foreach {$i = $null} {$_.Insert($_.IndexOf(";"),$i);$i++}
        }
        else {
                $_.Group
        }
}


YURETZS 20-10-2017 11:20 2771964

Kazun
Спасибо, а как сделать вывод в другой csv-файл, типа | export-csv -Path user.csv -NoTypeInformation

YURETZS 20-10-2017 11:42 2771969

Разобрался, просто добавить | Out-File user2.csv -Encoding Default


Время: 22:53.

Время: 22:53.
© OSzone.net 2001-