gato duplicado1.txt | sort -k 2 | uniq -f 1
Si se está preguntando con la marca "ordenar", es para decirle a "ordenar" que ordene según la segunda columna.
Mostrar todas las líneas pero duplicados separados
De acuerdo con todos los ejemplos mencionados anteriormente, "uniq" solo conserva la primera aparición del contenido duplicado y elimina el resto. ¿Qué tal eliminar por completo el contenido duplicado?? Sí, usando la bandera "-u", podemos forzar a "uniq" a mantener solo las líneas no repetitivas.
gato duplicado.txt | clasificar
gato duplicado.txt | ordenar | uniq -u
Mmm, ya se han ido demasiados duplicados ..
Omitir caracteres iniciales
Discutimos cómo decirle a "uniq" que haga su trabajo en otros campos, ¿verdad?? Es hora de comenzar la verificación después de varios caracteres iniciales. Para este propósito, la bandera "-s" acompañada por el número de caracteres le indicará a "uniq" que haga el trabajo.
gato duplicado1.txt | sort -k 2 | uniq -s 2
Es similar al ejemplo en el que "uniq" debía realizar su tarea solo en el segundo campo. Veamos otro ejemplo con este truco.
gato duplicado.txt | ordenar | uniq -s 5
Verifique los caracteres iniciales SOLAMENTE
Al igual que le dijimos a "uniq" que se saltara el primer par de caracteres, también es posible decirle a "uniq" que limite la comprobación dentro del primer par de caracteres. Hay una bandera "-w" dedicada para este propósito.
gato duplicado.txt | ordenar | uniq -w 5
Este comando le dice a "uniq" que realice una verificación de unicidad dentro de los primeros 5 caracteres.
Veamos otro ejemplo de este comando.
gato duplicado1.txt | ordenar | uniq -w 5
Elimina todas las demás instancias de entradas "duplicadas" porque hizo la comprobación de unicidad en la parte "dupli".
Insensibilidad a mayúsculas y minúsculas
Al verificar la unicidad, "uniq" también verifica las mayúsculas y minúsculas de los caracteres. En algunas situaciones, la distinción entre mayúsculas y minúsculas no importa, por lo que podemos usar la marca "-i" para que "uniq" no distinga entre mayúsculas y minúsculas.
Aquí les presento el archivo demo.
Alguna duplicación realmente inteligente con una mezcla de letras mayúsculas y minúsculas, a la derecha? Es hora de recurrir a la fuerza de "uniq" para purgar el desorden!
gato duplicado1.txt | ordenar | uniq -i
Deseo concedido!
Salida terminada en NULL
El comportamiento predeterminado de "uniq" es finalizar la salida con una nueva línea. Sin embargo, la salida también se puede terminar con un NULL. Eso es bastante útil si lo va a usar en secuencias de comandos. Aquí, la bandera "-z" es lo que hace el trabajo.
gato duplicado.txt | ordenar | uniq -z
Combinando múltiples banderas
Aprendimos una serie de banderas de "uniq", ¿verdad?? ¿Qué tal combinarlos juntos??
Por ejemplo, estoy combinando la insensibilidad a mayúsculas y minúsculas y el número de repeticiones juntos.
Si alguna vez planea mezclar varias banderas juntas, al principio, asegúrese de que funcionen de la manera correcta. A veces, las cosas simplemente no funcionan como deberían.
Pensamientos finales
"Uniq" es una herramienta bastante única que ofrece Linux. Con tantas funciones poderosas, puede ser útil de muchas maneras. Para obtener la lista de todas las banderas y sus explicaciones, consulte las páginas de información y manual de "uniq".
hombre uniq
info uniq
Disfrutar!