Como inverter classificar a saída do grep -rc

1

Eu quero poder classificar a saída do comando grep -rc ,

No momento, estou usando o comando:

grep -rc "Pattern" . | sort -t: -rk2,2n

no entanto, a lista ainda está classificada de baixa para alta, em vez de alta para baixa ... também imprime a saída exata ao usar:

grep -rc "Pattern" . | sort -t: -k2,2n

Então, o que eu quero é para as saídas:

data_x:12 
data_y:34
data_z:56
data_a:205
data_b:1003

para ser classificado em

data_b:1003
data_a:205
data_z:56
data_y:34
data_x:12
    
por tom 12.02.2016 / 23:39

2 respostas

2

Você está quase lá, exceto que você precisa que o modificador r faça uma ordenação inversa:

grep -rc "Pattern" . | sort -t: -k2,2nr

verifique o modificador r após n .

    
por 13.02.2016 / 00:03
1

Você pode usar isso,

~]# cat test
 data_x:12
 data_y:34
 data_z:56
 data_a:205
 data_b:1003

~]# sort -k2 -n -r -t: test
 data_b:1003
 data_a:205
 data_z:56
 data_y:34
 data_x:12

Então, para o seu código, você pode fazer

~]# grep -rc "Pattern" . | sort -k2 -n -r -t:
    
por 12.02.2016 / 23:57