Oooops!

A segunda linha tá errada. O certo é:
grep -vf duplicados arq > individuais

Isto que dá digitar novamente em vez de usar as ciências exatas do
ctrl+(c|v) :P

Abraços!

César Vianna escreveu:
> Buenas !!
> 
> Tenho um csv com 5 campos. O terceiro são CPFs. Tenho que separar em dois
> arquivos: um com os CPFs duplicados e outro com os CPFs únicos.
> 
> Fiz assim:
> 
> cut -d";" -f3 arquivo.csv | uniq -d
> 
> e
> 
> cut -d";" -f3 arquivo.csv | uniq
> 
> 
> Ok. O problema é que eu perco o resto da linha. Tem alguma opção do uniq ou
> outro comando para recuperar o conteúdo da linha? Como os grupos ( \1 ... )
> em expressões regulares.

Ou eu não entendi, ou isto resolve de forma simples e rápida:

cat arq
fulano;m;1234;rua;cidade
ciclano;m;5678;rua;cidade
fulano de tal;m;1234;rua;cidade
beltrana;f;9876;rua;cidade

grep $(cut -d";" -f3 arq|sort|uniq -d) arq > duplicados
grep -vf individuais arq > individuais

cat individuais
ciclano;m;5678;rua;cidade
beltrana;f;9876;rua;cidade

cat duplicados
fulano;m;1234;rua;cidade
fulano de tal;m;1234;rua;cidade

Isto?

-- 
Fabiano Caixeta Duarte
Especialista em Redes de Computadores
Linux User #195299
Ribeirão Preto - SP

Responder a