Como classifico uma lista de palavras por tamanho de string?

3

Existe uma lista de palavras assim:

123
b
1
4rr
f
k3j3
gg

Então eu precisei classificar essas palavras por tamanho de string (não importa qual comece com numérico ou string ambos estão bem)

A saída deve ser esta:

b
1
f
gg
123
4rr
4rr

Existe um comando de classificação que me permite fazer isso?

    
por Smile.Hunter 19.07.2012 / 14:00

1 resposta

3

Eu suponho que você quer fazer isso na linha de comando.

A maioria das ferramentas de linha de comando funciona de maneira baseada em linhas, por isso é fácil, com awk , sort e cut , veja por exemplo esta outra pergunta :

# Print line-length and the line
awk '{ print length, $0 }' infile |

# Sort numerically by line-length
sort -n                           |

# Remove line-length number
cut -d' ' -f2-

Saída:

1
b
f
gg
123
4rr
k3j3

Veja man awk , info sort e info cut para mais.

    
por Thor 19.07.2012 / 14:24