El comando sort UNIX se utiliza para ordenar los archivos de texto ASCII . Puede ser utilizado para ordenar los archivos de cualquier tamaño . El comando puede incluso ser utilizado para ordenar más de un archivo y colocar la salida en un solo archivo . Los datos se pueden ordenar alfabéticamente o numéricamente en cualquier campo en el archivo . Uso
El comando sort tiene la sintaxis "sort [opciones ] archivo ( s ) . " Sin ninguna opción, el comando sort utiliza toda la línea como clave de ordenación por defecto , el tipo de archivos por orden alfabético y en orden ascendente, e imprime el resultado en la pantalla . Las líneas del archivo no tienen que ser del mismo tamaño . Los campos dentro del archivo están separados por un espacio de forma predeterminada.
Puede utilizar las opciones del comando para cambiar el comportamiento predeterminado del comando sort . Para enviar la salida a un archivo en lugar de la pantalla, utilice la opción "- o". La sintaxis sería " tipo - . De entrada o de salida "
Si usted tiene un archivo que contiene datos numéricos , se debe utilizar la "n - " la opción de decir el comando para ordenar numéricamente. La sintaxis sería "sort -n nombre de archivo. " Por supuesto , puede añadir la opción "-o" para dar salida a los resultados a un archivo de salida . La sintaxis sería entonces "Entrada de tipo -n -o de salida. "
Si prefiere ordenar el archivo en orden ( za ) en lugar de la orden ( az) en orden ascendente , debería usar la opción "- r" opción . La "r " es sinónimo de retroceso en este caso. La sintaxis sería "nombre de archivo tipo -r ".
Ordenar asume que los campos están separados por espacios en blanco , lo que significa que cada palabra en una línea se cuenta como un campo. Sin embargo , usted puede tener un archivo de valores separados por comas ( CSV ) , o los campos se puede separar de otro carácter , como una coma . Si este es el caso, utilice la opción "- t" para designar el separador de campo . La sintaxis de un archivo CSV sería " tipo -t , nombre de archivo ".
Ordenar supone que desea utilizar toda la línea como criterio de ordenación . Si sólo desea ordenar un campo específico, debe agregar la opción "+ m ", donde " m" es el número del campo menos uno. Por ejemplo , si usted tenía un archivo CSV que contiene primero el nombre del campo , apellidos y dirección , y que quería ordenar por el apellido, la sintaxis sería " tipo -t, 1 nombre del archivo . " El " 1 ", dice para ordenar en el segundo campo. La razón de la extraña numeración es debido al hecho de que los comandos Unix por lo general comienzan a contar a " 0 ", no " 1 ". El comando sería entonces ordenar el apellido y utilizar el campo de dirección como una opción de clasificación secundaria.
Si sólo queremos ordenar en el segundo campo del ejemplo anterior, se tendría que decir el comando sort para detener clasificación en el tercer campo . Para ello deberá utilizar la opción "- m" , donde " m" es el número del campo menos uno. Para ordenar sólo en el último campo de nombre en el ejemplo anterior , se utiliza la sintaxis " tipo -t, 1 -2 nombre de archivo. "
Otras opciones más comunes incluyen el " -u " y "- d " opciones. La opción " -u" le dice al comando para imprimir sólo los valores únicos después de la clasificación . Si no son múltiplos de una sola línea , se imprimirá sólo una instancia del valor . La opción "- d ", dice para realizar un diccionario de clasificación del archivo , lo que significa que sólo los espacios en blanco , dígitos y caracteres alfabéticos se utilizan en la comparación.
Ordenar También se puede utilizar para combinar y ordenar dos archivos en una único archivo de salida . Si más de un archivo se proporciona como un archivo de entrada , el comando combinar los dos archivos y ordenar los resultados . Cuando se utiliza con la opción "-o" , el resultado será un solo archivo que contiene los valores ordenados de los dos archivos . La sintaxis sería "una especie -o de salida ENTRADA 1 ENTRADA 2 ". Otras opciones para el comando tipo se pueden encontrar en la página principal de clasificación ( consulte " Recursos adicionales ", más adelante . )