Mostrando postagens com marcador sort. Mostrar todas as postagens
Mostrando postagens com marcador sort. Mostrar todas as postagens

sábado, 11 de setembro de 2021

Sort - Arquivo Delimitado

Exemplo de sort de arquivo delimitado;

sort -n --field-separator=';' -k1,2 -u -T /tmp/

-n - Campo numérico

--field-separator - separador de campos

-k - campos a serem classificados

-u unique - retira duplicidades

-T pasta para arquivos temporários


segunda-feira, 31 de agosto de 2015

Sort - Arquivo Posicional

Para classificar um arquivo posicional fixo, quando a(s) chave(s) não está(ão) no começo do arquivo, deve-se usar o parâmetro -k, como a seguir:

-k1.[pos_inicial],1.[pos_final]

Exemplo:

sort -k1.58,1.77 -k1.13,1.26 -k1.175,1.176 -k1.79,1.98

No exemplo acima, o arquivo é classificado pelas posições 58 a 77, em seguida pelas posições 13 a 26, depois pelas posições 175 a 176 e por fim pelas posições 79 a 98.

terça-feira, 31 de julho de 2012

Atenção com SORT em LINUX

Por default, algumas compilações/distribuições LINUX (como o CentOS), tem o seu ambiente definido de modo com que o aplicativo SORT considere em seu processo de ordenação apenas os caracteres válidos em dicionário - ou seja, caracteres alfanuméricos (a/A-z/N e 0-9), sem pontuações (! ? , . <espaço>, etc). Caso você necessite que tais caracteres sejam considerados na ordenação deve-se, independente dos parâmetros do próprio SORT (como -d -g e outros) alterar a variável de ambiente LC_ALL para C, e na sequência executar o SORT. Veja como:

export LC_ALL=C; sort <parâmetros>

Esta observação faz parte inclusive da documentação do GNU-SORT, conforme texto abaixo:

*** WARNING *** The locale specified by the environment affects sort order.  Set LC_ALL=C  to  get  the  traditional sort order that uses native byte values.