Tente isto:
ls -l | awk '{print $3, $4, $8}' | sort
Ele irá imprimir o nome do usuário, o nome do grupo e o nome do arquivo, desde que o nome do arquivo não contenha espaços. Como alternativa, você pode digitar:
ls -l | awk '{print $3, $4, $0}' | sort
Isso imprimirá o nome do usuário, o nome do grupo e a saída ls -l
completa, classificada primeiro pelo nome do usuário, depois o nome do grupo e, em seguida, o que for que ls -l
imprime primeiro.
Observe que, dependendo da sua distribuição, os números reais das colunas podem ser diferentes. Eu tentei o meu no SUSE e Coreutils versão 5.2.1.
Provavelmente existem soluções melhores e mais elaboradas, mas essa é a mais simples e funcionará na maioria das vezes.