Masowe porównanie i zamiana w plikach tekstowych

Potrzebujesz pomocy z C, C++, perl, python, itp.
troll3
Posty: 1
Rejestracja: 11 października 2012, 20:35

Masowe porównanie i zamiana w plikach tekstowych

Post autor: troll3 »

Witam.
P
otrzebuję coś takiego w pythonie, perlu, bashu, obojętnie w czym. Załóżmy, że mam dwa pliki:

Kod: Zaznacz cały

1.txt
2.txt



Przykładowa zawartość pliku 1.txt:

Kod: Zaznacz cały

Nowak:Budowlana1
Kazikowski:Sluga2
Romanowski:Spacerowa3

Przykładowa zawartość pliku 2.txt:

Kod: Zaznacz cały

Budowlana1:6973248883
Sluga2:6078837721
Spacerowa3:837212121
I chodzi mi mianowicie o to, żeby sprawdziło w obu pikach, czy istnieją np.

Kod: Zaznacz cały

Budowlana1
Sluga2
Spacerowa3

A jeśli istnieje w obu to żeby mi pobrało wartość z tego drugiego piku, mianowicie to po średniku.

Kod: Zaznacz cały

6973248883
6078837721
837212121
i ładnie zapisało do nowego pliku np.: 3.txt w formie

Kod: Zaznacz cały

Nowak:6973248883
Kazikowski: 6078837721
Romanowski: 837212121
I tak, żeby mi przerobiło wszystko co jest w w plikach i zapisało.
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

Post autor: sethiel »

Tak że gotowca dostaniesz to nie bardzo ale dam Ci klocki i sobie je poukładaj:

Kod: Zaznacz cały

CFGFILE="userulica.txt"
for a in `cat $CFGFILE`; do
    USERNAME="`echo $a | awk -F ":" '{print $1}'`"
    ULICA="`echo $a | awk -F ":" '{print $2}'`"
    
    tutaj funkcja z cat drugiego pliku + grep drugiego pliku po $USERNAME + przekierowanie wyniku do pliku >> w postaci echo $USERNAME:$NUMER

done
Uzupełnisz poskładasz działać będzie.
ODPOWIEDZ