1
resposta

meu computador/linux deve ter problemas

No primeiro teste ele retornou 4 processos (o grep só considerou o 0 e nao o intervalo

xxx:~$ ps -e -o pid --sort -size | head -n 11 | grep [0-9]
 7980
 8028
 8052
 8088

Colocando entre aspas o grep abaixo ele retorna só 10 linhas (ha que se considerar que o head retorna 11 linhas e a primeira é o cabecalho "PID", entao quando manda considerar só o que tem numero restarao 10 linhas e nao 11

xxx:~$ ps -e -o pid --sort -size | head -n 11 | grep "[0-9]"
 7980
 8028
 8539
 1544
 8052
 4272
 8088
 2887
 3459
 4521

Trocando o head para 12 vao sobrar 11 linhas excluindo-se o PID da primeira

xxx:~$ ps -e -o pid --sort -size | head -n 12 | grep "[0-9]"
 7980
 8028
 8539
 1544
 8052
 4272
 8088
 2887
 3459
 4521
 3624
1 resposta

Oi Luiz, tudo bem? O primeiro caso aconteceu comigo também, o grep só passou a considerar o intervalo quando coloquei as aspas, acho que pode ter sido uma evolução da ferramenta mesmo, atualização ou algo assim.

Nas demais situações, o comportamento é esse mesmo, o head vai retornar o número de linhas pedido, mas o grep vai filtrar o cabeçalho do resultado, mostrando apenas os processos em si, e o resultado final será o n - 1 (11 - 1), (12 - 1).

Faz sentido?