![]() |
Сравнение 2 файлов
Возникла необходимость сравнение 2 текстовых файлов и запись в третий файл данных из первого и второго. Кто может помогите, как это можно реализовать? PowerShell изучаю совсем не давно и таких навыков еще нет =( А теперь более подробно:
Есть 2 файла, в виде: 1. Файл 00005555;000000;Петров Петр Петрович 2. Файл 0000;0000;0000;0000;0000;0000;0000;0000;Петров Петр Петрович;PetrovPP Необходимо следующее сравнить 2 файла построчно и при полном совпадении ФИО в 1 файле и ФИО во втором записать строку в третий файл совместив первое поле из первого файла и всю строку из второго в виде: 0000;0000;0000;0000;0000;0000;0000;0000;Петров Петр Петрович;PetrovPP;00005555 А при нахождении двух ФИО идентичных записать ошибку в отдельный файл с указанием ФИО. |
Цитата:
Цитата:
Цитата:
|
1 файл
Выгрузка из AD Путь к утечке, Петров Петор Петрович,PetrovPP Путь к утечке, Петров1 Петор Петрович,Petrov1PP Путь к утечке, Петров2 Петор Петрович,Petrov2PP и т.д. (более 500 пользователей) 2 файл 0000000001;99996; Петров Петор Петрович;Контора;Адрес;Телефон 0000000002;99997; Петров1 Петор Петрович;Контора;Адрес;Телефон 0000000003;99998; Петров2 Петор Петрович;Контора;Адрес;Телефон и т.д. (более 500 пользователей) В результате необходимо взять ФИО первого пользователя из 1 файла (Петров Петор Петрович) найти его во втором файле и первый параметр из строчки записать и так по всем пользователям. т.е. в результате должно получаться: Путь к утечке, Петров Петор Петрович,PetrovPP,0000000001 Путь к утечке, Петров1 Петор Петрович,Petrov1PP,0000000002 Путь к утечке, Петров2 Петор Петрович,Petrov2PP,0000000003 и это записывается в 3 файл А если идет полное совпадении записывается в отделенный файл как ошибка |
Johny_spb, повторю:
Цитата:
Цитата:
Цитата:
Цитата:
Короче говоря: выкладывайте архив с образцами исходных файлов, с результирующим файлом и с «отделенный файл как ошибка», которые должны получиться в итоге обработки. |
Вложений: 1
Файлы во вложении. Спасибо!
|
Код:
$f1 = Import-Csv Фаил1.csv |
При попытке выполнить выдает ошибку =(
Import-Csv : Не удается найти параметр, соответствующий имени параметра "Encoding". C:\Temp\scr.ps1:2 знак:33 + $f2 = Import-Csv 2.txt -Encoding <<<< Default -Header H1,H2,H3,H4,H5 + CategoryInfo : InvalidArgument: (:) [Import-Csv], ParameterBindingException + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.ImportCsvCommand |
Еще заметил что при создании файла результата появляются лишние "" (двойные кавычки)
"DN","displayName","sAMAccountName","employeeNumber" "CN=Petrov1PP,OU=40-Users,OU=St-Petersburg,DC=region,DC=cbr,DC=ru","Петров1 Петр Петрович","Petrov1PP", "CN=Petrov2PP,OU=40-Users,OU=St-Petersburg,DC=region,DC=cbr,DC=ru","Петров2 Петр Петрович","Petrov2PP", А необходимо: DN,displayName,sAMAccountName,employeeNumber "CN=Petrov1PP,OU=40-Users,OU=St-Petersburg,DC=region,DC=cbr,DC=ru",Петров1 Петр Петрович,Petrov1PP, "CN=Petrov2PP,OU=40-Users,OU=St-Petersburg,DC=region,DC=cbr,DC=ru",Петров2 Петр Петрович,Petrov2PP, |
Код:
$err = @() |
Время: 22:32. |
Время: 22:32.
© OSzone.net 2001-