Uniquniq es un comando de la familia de Sistemas Operativos Unix que permite borrar o mostrar las líneas repetidas de un archivo o bien provenientes de la entrada estándar (stdin).[1] Es un requisito necesario para el buen funcionamiento de uniq que la información de entrada (archivo o stdin) se encuentre previamente ordenada, o que por lo menos las líneas repetidas se encuentren contiguas. Por dicho motivo es muy común usar uniq junto con el comando sort, que se encarga del ordenamiento. Este comando presenta algunas limitaciones a la hora de hacer comparaciones para determinar si una línea es o no única: o se compara la totalidad de la línea, o bien una porción de la misma que puede estar determinada por alguno de los siguientes criterios :
Dicha limitación impide por ejemplo que un usuario pueda determinar que una línea es única sobre la base de un único campo, siempre y cuando no sea el único o último de las líneas. Modo de UsoLa invocación del comando uniq tiene la siguiente sintaxis: uniq [PARAMETRO]... [ENTRADA [SALIDA]] La forma más simple de invocarlo es sin parámetros y con un Archivo ordenado como entrada, para lo cual uniq nos muestra en pantalla las líneas sin sus repeticiones. En caso de que indiquemos un segundo archivo, este será utilizado como salida, para guardar el resultado del procesamiento. A continuación se enumeran los parámetros:
EjemplosA continuación se plantean algunos ejemplos usando el siguiente archivo, denominado archivo.txt, el cual posee 3 campos ordenados alfabéticamente: Ananá 1 bueno Banana 2 malo Banana 2 malo Durazno 3 malo Manzana 4 malo Manzana 4 malo Manzana 5 malo Pera 6 regular Uva 7 regular Uva 8 regular Eliminar las líneas duplicadas uniq archivo.txt
Resultado: Ananá 1 bueno Banana 2 malo Durazno 3 malo Manzana 4 malo Manzana 5 malo Pera 6 regular Uva 7 regular Uva 8 regular Mostrar las líneas que no posea duplicados: uniq -u archivo.txt
Resultado: Ananá 1 bueno Durazno 3 malo Manzana 5 malo Pera 6 regular Uva 7 regular Uva 8 regular Mostrar las líneas sin repeticiones ignorando los primeros 2 campos (frutas y números): uniq -f2 archivo.txt
Resultado: Ananá 1 bueno Banana 2 malo Pera 6 regular Totalizar (-c) las líneas que posean repeticiones (-d), ignorando los primeros 2 campos (frutas y números), : uniq -d -f2 -c archivo.txt
Resultado: 6 Banana 2 malo 3 Pera 6 regular Véase tambiénEnlaces externos
Referencias |
Portal di Ensiklopedia Dunia