Pregunta:
Supongamos que hay una columna de valores numéricos como la siguiente:
Archivo1:
1
2
3
3
3
4
4
4
5
6
Quiero la salida:
3
4
Es decir, solo las líneas repetidas. ¿Hay alguna herramienta de línea de comandos para averiguarlo en Linux? (NB: los valores están ordenados numéricamente).
Respuesta:
Puede usar uniq(1)
para esto si el archivo está ordenado:
uniq -d file.txt
Si el archivo no está ordenado, ejecútelo primero a través de sort(1)
:
sort file.txt | uniq -d
Esto imprimirá solo los duplicados.
Técnicamente, la entrada no necesita estar ordenada, pero los duplicados en el archivo deben ser consecutivos. La forma habitual de lograrlo es ordenar el archivo.