[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

comparação de arquivos texto



Ola coleguinhas :)

Tenho uma tarefa chata para cumprir :(

Tenho um arquivo alunos.csv com a seguinte estrutura:
nº, nome, cursos que fez, quando fez
1,josé,culinária básica,1999
2,josé,higiene de alimentos,2000
3,antonio,culinária básica,1999
4,maria,culinária básica,1999


Este arquivo contém todos os cursos feitos até hoje por todos os
alunos, sendo que o josé repetido ali é a mesma pessoa.

Tenho um outro arquivo chamado matricula.csv que tem a seguinte estrutura:
nome, endereço, telefone, e-mail
josé,rua 10,12345678,jose@localhost
antonio,rua 20,87654321,antonio@localhost

Este arquivo contém nomes de pessoas que já existem no arquivo
alunos.csv, mas não todos.

O arquivo de matricula contem 1000 registros, e o arquivos alunos tem
60000 registros, porque cada aluno fez mais de um curso.

O que eu preciso fazer é comparar o arquivo matricula.csv com o
alunos.csv e gerar um terceiro arquivo.csv contendo somente as pessoas
que existem no arquivo matricula.csv com os cursos que ela fez,
eliminando todos aqueles que não existem no arquivo matricula.csv.

Procurando na internet achei dicas usando o sed e awk, mas não
consegui montar um script. Um coleguinha de batalha me sugeriu usar o
diff, mas não consegui encontrar nas manpage dele uma dica de como
usar. O mais complicado são as linhas repetidas do arquivo alunos.csv
pelo fato de só existir o campo nome em comum nos dois arquivos.

Preciso fazer isso para migrar um sistema de gestão escolar que era em
clipper para php+mysql. O sisteminha já está pronto e o servidor
debian está lindo, falta só migrar os dados. Os arquivos.csv foram
exportados do dbf do sisteminha antigo.

Alguém aqui com experiencia em manipulação de arquivos texto pode me ajudar?


--
G



Reply to: