Eu tenho esta entrada:
sdkxyosl 1
safkls 2
asdf--asdfasxy_asd 5
dkd8k jasd 29
sdi44sw 43
asasd afsdfs 10
rklyasd 4
Eu preciso desta saída:
sdi44sw 43
dkd8k jasd 29
asasd afsdfs 10
asdf--asdfasxy_asd 5
rklyasd 4
safkls 2
sdkxyosl 1
Então, eu preciso classificar as linhas pela última coluna.
Não sei quantas colunas estão em uma linha.
Eu simplesmente não consigo descobrir como fazê-lo. Eu não tenho "poderes perl". Eu apenas tenho ~ poderes médios de script com sed, awk, cut, etc.
Alguém sabe como fazer isso?
text-processing
sort
LanceBaynes
fonte
fonte
sort -k
. Abegfield
função na classificação GNU conta apenas com zero. Sua abordagem de decorar-classificar-undecorate (DSU) parece ser a melhor maneira que penso.$NF,$RS
e não$NF,$0
? Eu não sabia$RS
disso. (Eu acho que é equivalente a$NF,$"\n"
, que faz o mesmo, mas que também é surpreendente que eu penso.)$
pode ser seguido por qualquer expressão. “ O efeito da expressão do número do campo avaliado para algo diferente de um número inteiro não negativo não é especificado ”. O GNU awk (no meu sistema) trata uma string"\n"
como zero. Outros (por exemplo, a implementação original de A, W e K) abortam com uma mensagem de erro. SeRS
fosse um dígito, você obteria o campo correspondente em qualquer implementação. Então não faça isso, use$0
.