Para ordenar o conteúdo duma
string em várias linguagens de programação, utilizamos geralmente as funções (ou métodos)
split e
sort.
Mas em shell script não dispomos de algo similar. Porém, como o shell oferece diversas ferramentas fantásticas, nada como um simples encadeamento de comandos para criarmos nosso próprio método de ordenação!
Para isso, usaremos o trio:
Assim:
$ echo $string | grep -o '.' | sort -n | tr -d '\n'; echo
Onde:
- grep -o '.' : Irá separar com um 'new line' cada caractere da string
- sort -n : Ordenará os caracteres de acordo com seus valores numéricos na tabela ASCII
- tr -d '\n' : Removerá os 'new lines' devolvendo a string ao seu formato original
Pronto! Simples assim. ;)