Mostrando las entradas con la etiqueta UNIX. Mostrar todas las entradas
Mostrando las entradas con la etiqueta UNIX. Mostrar todas las entradas

jueves, 18 de febrero de 2016

Comando SORT en Unix.

Utilización del comando SORT en Unix (HP-UX)


NOMBRE:


SORT - Ordenar archivos.


Sintaxis:


Sort [-opcion].


Antes de pasar a la descripción del comando SORT, vale la pena especificar algunos de los términos que se utilizan, tales como:


ASCII -> Del acrónimo “American Standard Code for Information Interchange” en español “Código Estándar Americano para el intercambio de información” ya que las computadoras solamente entienden código ASCII es más fácil y rápido procesar esa información.


Archivo de Entrada –> Comando o instrucción que utilizamos para combinarlo con el comando SORT.


Archivo de Salida -> El resultado de la instrucción que ingresamos a la ventanilla de comandos, convertido a un archivo de texto.


Salida Estándar -> El resultado de la instrucción que ingresamos a la ventanilla de comandos, que se muestra en la misma pantalla.

DESCRIPCIÓN

Ordena y clasifica las líneas de los archivos denominados y escribe el resultado dependiendo de la utilización o el comando añadido.


Las comparaciones se basan en una o más teclas de ordenar extraídos de cada  línea de entrada. De forma predeterminada, hay una clave de ordenación.


Las siguientes opciones alteran el comportamiento por defecto:


Opción –A: Nos da un resultado en bytes utilizando valores codificados para cada carácter, si estamos utilizando caracteres ASCII en el comando SORT el desempeño será más rápido.


Opción –c: Comprueba que el archivo de entrada está ordenada de acuerdo a las reglas de ordenación, no se produce salida alguna, es decir que no veremos que el comando SORT arroje alguna información.


Opción –m: Muy parecido a la opción –c, solamente combina los archivos de entrada que ya se encuentran ordenados.


La salida –o: Argumento dado para crear un nuevo archivo de salida, en lugar de la salida estándar. Este archivo puede ser el mismo como uno de los archivos de entrada.


-u Único: Suprime todas las líneas que son iguales, por ejemplo si tenemos una lista de meses y se repiten, solo los mostrara una sola vez.


-y [kmem] Muchas de las veces cuando utilizamos el comando SORT en archivos muy grandes empieza a consumir una gran cantidad de memoria y puede afectar el desempeño del equipo, pero si esta opción se presenta como un valor el comando SORT empieza a utilizar una determinada cantidad de memoria en kilobytes que se especifica utilizando el comando SORT –y [kmem], por convención la opción –y sin argumento empieza con el máximo de memoria.


-z recsz El tamaño de la línea más grande de lectura se registra en memoria. Si se omite esta opción a través  las opciones -c o -m, se utilizará un tamaño por defecto.


-T dir Uso de dir como el directorio de archivos temporales en lugar de en el directorio predeterminado, que es uno de A continuación: especificado en la variable de entorno TMPDIR; /var/tmp, y finalmente, /tmp.



Opciones de Ordenamiento





Las siguientes opciones tienen prioridad sobre las reglas de ordenación por defecto:


-d ordenamiento cuasi-diccionario: sólo caracteres alfanuméricos y espacios en blanco (espacios y pestañas), según lo definido por LC_CTYPE.


-f letras Fold. Antes de ser comparado, las letras minúsculas se convierten efectivamente en sus     equivalentes en mayúsculas, según la definición de LC_CTYPE.


-i En las comparaciones no numéricas, ignora todos los caracteres que son no imprimibles, tal como se define por LC_CTYPE. Para los caracteres ASCII.


-n Cuando utilizamos la opción –n nuestra salida estándar nos ordena alfabéticamente nuestro s archivos o texto primeramente los signos ASCII, después las palabras compuestas y por último los archivos que empiezan con números.


-r Invierte el sentido del ordenamiento.


-M Si nos encontramos posicionados en nuestro home directory posiblemente tengamos carpetas o archivos creados con diferente fecha de creación, esta opción nos permite ordenar cada carpeta y archivo por mes.


Ejemplos:



[User] > cat list1.txt | sort -n
cinco
cuatro
diez
dos
nueve
ocho
once
seis
siete
tres
uno                                                                           
--------------------------------------------------------------------------------------------------------------------------
[2016-02-18 13:58.49]  ~
[User] > cat list1.txt | sort -rn
uno
tres
siete
seis
once
ocho
nueve
dos
diez
cuatro
cinco
--------------------------------------------------------------------------------------------------------------------------
[User] > ls -lrt | sort -o salida1.txt
--------------------------------------------------------------------------------------------------------------------------
[User] > cat salida1.txt
-rw-rwxr--    1 User UsersGrp        58 Feb 18 13:34 list1.txt
-rwxrwx---    1 User  UsersGrp       393 Feb 18 10:15 README.txt
lrwxrwxrwx    1 User  UsersGrp        10 Feb 18 10:15 MyDocuments -> /drives/u/
lrwxrwxrwx    1 User  UsersGrp        32 Feb 18 10:15 Desktop -> /drives/C/Users/yyy1a94/Desktop/
lrwxrwxrwx    1 User  UsersGrp        37 Feb 18 10:15 LauncherFolder
total 3
--------------------------------------------------------------------------------------------------------------------------
[User] > ls -lrt
total 3
-rwxrwx---    1 yyy1a94  UsersGrp       393 Feb 18 10:15 README.txt
lrwxrwxrwx    1 yyy1a94  UsersGrp        10 Feb 18 10:15 MyDocuments -> /drives/u/
lrwxrwxrwx    1 yyy1a94  UsersGrp        37 Feb 18 10:15 LauncherFolder
lrwxrwxrwx    1 yyy1a94  UsersGrp        32 Feb 18 10:15 Desktop
-rw-rwxr--    1 yyy1a94  UsersGrp        58 Feb 18 13:34 list1.txt
-rw-rwxr--    1 yyy1a94  UsersGrp       440 Feb 18 14:00 salida1.txt
drwxrwxr-x    1 yyy1a94  UsersGrp         0 Feb 18 14:04 carpeta1
--------------------------------------------------------------------------------------------------------------------------
[User] > ls -lrt | awk '{print $8}' | sort -u
10:15
13:34
14:00
14:04


En este ejemplo imprimimos la línea 8 mediante el comando awk y como podemos ver solo despliega la hora que es diferente entre si.
--------------------------------------------------------------------------------------------------------------------------


Hasta aquí este tutorial, espero que les haya servido de ayuda y recuerden que cualquier duda o comentario favor de hacerlo llegar mediante la sección aquí abajo.


¡Saludos!