É provável que, na sua implementação de ps
, a classificação se aplique apenas a processos, não a threads (consulte fancy_spew()
em procps
' display.c
). Tanto quanto eu posso dizer, se você quiser classificar tópicos você precisa pós-processar a saída; por exemplo,
ps -p 29492 -L -o pid,tid,psr,pcpu | sort -n -k4,4
mas a linha do cabeçalho é misturada na saída. Se você quiser manter a linha de cabeçalho, pode retirá-la e imprimi-la separadamente:
ps -p 29492 -L -o pid,tid,psr,pcpu | sed -e1\!b -e'w /dev/fd/2' -ed | sort -n -k4,4
Você também pode simplesmente descartar a linha de cabeçalho especificando valores de cabeçalho em branco para todos os seletores de saída:
ps -p 29492 -L -o pid=,tid=,psr=,pcpu= | sort -n -k4,4
Em todos esses casos, você pode inverter a classificação adicionando -r
aos parâmetros sort
. A ordem de classificação pode ser afetada por LC_NUMERIC
ou LC_ALL
; definir LC_ALL=C
classificará os valores com um ponto decimal .
corretamente.