Resumen
`uniq` se usa comúnmente en combinación con el comando `sort` a través de una tubería (|) para procesar eficientemente líneas duplicadas en datos ordenados. La opción `-c` facilita la identificación de la cantidad de líneas duplicadas.
Características principales
- Procesamiento de líneas duplicadas consecutivas
- Conteo de líneas duplicadas (-c)
- Opción para ignorar mayúsculas y minúsculas (-i)
- Comparación ignorando campos o caracteres específicos
Opciones principales
Funcionalidad
Método de comparación
Comando generado:
Combina los comandos.
Descripción:
`uniq` Ejecutando el comando.
Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.
Ejemplos de uso
Calcular la frecuencia de palabras en un archivo
sort words.txt | uniq -c
Cuenta cuántas veces aparece cada palabra (línea) en el archivo `words.txt` y lo imprime. Dado que `uniq` solo procesa duplicados consecutivos, primero se usa `sort` para hacer que todas las duplicaciones sean adyacentes.
Encontrar las líneas más frecuentes en un archivo de registro
cat log.txt | sort | uniq -c | sort -nr
Cuenta la frecuencia de líneas duplicadas en un archivo de registro y muestra las líneas más frecuentes desde la parte superior, ordenadas de forma descendente por su recuento (número).
Contar líneas duplicadas ignorando mayúsculas/minúsculas
echo -e "Apple\napple\nBanana\napple" | sort | uniq -ci
Considera 'Apple' y 'apple' como iguales en la entrada estándar y cuenta la cantidad de duplicados para imprimirlos.
Contar líneas duplicadas ignorando campos específicos
sort -k2 data.txt | uniq -f 1 -c
Ignora el primer campo del archivo y compara desde el segundo campo para contar las líneas duplicadas e imprimir el resultado. (Por ejemplo, si el contenido de `data.txt` es `ID1 apple`, `ID2 apple`, se contará 'apple' como 2 veces).
Consejos y precauciones
El comando `uniq` procesa por defecto solo las líneas que están 'consecutivamente' duplicadas. Por lo tanto, para eliminar o contar duplicados en todo el archivo, primero debe ordenar las líneas usando el comando `sort`.
Consejos de uso
- Uso con sort: `uniq` solo procesa duplicados consecutivos, por lo que para procesar duplicados en todo el archivo, primero debe ordenarlos con `sort`. Ejemplo: `sort file.txt | uniq -c`
- Encontrar los elementos más frecuentes: Puede canalizar el resultado de `uniq -c` a `sort -nr` para ordenar los elementos más frecuentes en orden descendente. Ejemplo: `sort file.txt | uniq -c | sort -nr`
- Consideraciones de rendimiento: Para archivos muy grandes, se debe considerar el uso de memoria de `sort` y `uniq`. Si es necesario, puede especificar un directorio temporal usando la opción `-T` de `sort`.