Tuesday, March 06, 2012

Trabajo con texto / uniq

uniq permite identificar, contar, y omitir lineas repetidas dentro de un fichero que esté ordenado, así que su uso más típico es junto con cat y sort.

Eliminamos líneas duplicadas:
cat file_a | sort | uniq
Contamos líneas duplicadas:
cat file_a | sort | uniq  -c

Si consideramos que tenemos ficheros de texto (file_a y file_b) con registros por líneas, facilmente podemos realizar las siguientes operaciones:

Union de registros de A y B:
cat file_a file_b | sort | uniq > file_c
Intersección de registros de A y B (registros comunes):
cat file_a file_b | sort | uniq -d > file_c
Diferencia de registros de A y B (A - B):
cat file_a file_b file_b | sort | uniq -u > file_c


Más info:
man sort
man uniq
info coreutils

No comments: