VOOZH about

URL: https://es.wikipedia.org/wiki/Sort_(Unix)

⇱ sort (Unix) - Wikipedia, la enciclopedia libre


Ir al contenido
De Wikipedia, la enciclopedia libre
👁 Image
sort --help


sort es una utilidad de la línea de comandos del sistema operativo Unix.

Funciona de la siguiente manera: toma los archivos que figuran en su lista de argumentos y ordena sus líneas. La ordenación se realiza sobre la base de una o más claves extraídas de cada línea de los archivos de entrada. De forma predeterminada, todos los datos de entrada se toman como clave de ordenación. Los espacios en blanco son tomados por defecto como separadores de campo. El parámetro -r invertirá el orden, -n toma un valor alfabético y lo interpreta como un número, con el parámetro -f no discriminara entre mayúsculas y minúsculas, -t se utiliza como separador de campo, -k busca según número de columna y lo ordena.

Uso:

$sort[opciones][archivo]

Ejemplos

[editar]

Para ordenar el directorio actual por tamaño de archivo:

$ls-s|sort-n
0GNUstep
0Mail
4ALT.txt
4Events
4Ted.lnk
12stats
124_backup

Para ordenar una lista en un archivo por orden alfabético:

$catagenda.txt
JuanLópez555-4321
AntoniaPérez555-1234
RodolfoRuiz555-3214
AnaCohen555-4321

$sortagenda.txt
AnaCohen555-4321
AntoniaPérez555-1234
JuanLópez555-4321
RodolfoRuiz555-3214

La opción -n hace que el orden sea de acuerdo a valores numéricos:

$du/bin/*|sort-n
10/bin/domainname
10/bin/hostname
10/bin/run-parts
42/bin/cp
675/bin/bash

En las versiones antiguas del comando existía la opción +1, la cual indicaba a sort que debía ordenarse tomando la segunda columna de datos (usándose +2 para la tercera y así sucesivamente). Las versiones más actuales no soportan esta opción, en su lugar se usa la opción -k, por ejemplo, para ordenar usando como criterio la segunda columna de datos:

estoestámalsoloteloordenaporelprimerdígitosipusiésemoselnº20porejemplosaldríaelprimero
$cat''edades''
Francisco45
Javier56
Lola34
Jorge25

$sort-nk2''edades''
Jorge25
Lola34
Francisco45
Javier56

Ordenar un archivo usando separadores:

$sort-t'|'-k2''edades''
Jorge|25
Lola|34
Francisco|45
Javier|56

La opción -r invierte el orden:

$sort-nrk2''edades''
Javier56
Francisco45
Lola34
Jorge25

Véase también

[editar]

Enlaces externos

[editar]