So sortieren Sie die Ausgabe von grep -rc umgekehrt

So sortieren Sie die Ausgabe von grep -rc umgekehrt

Ich möchte die Ausgabe des grep -rcBefehls sortieren können.

Ich verwende derzeit den Befehl:

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

Die Liste ist jedoch immer noch von niedrig nach hoch sortiert, anstatt von hoch nach niedrig. Außerdem wird die genaue Ausgabe ausgedruckt, wenn Folgendes verwendet wird:

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

Was ich also für die Ausgaben möchte, ist:

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

sortiert werden in

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

Antwort1

Sie haben es fast geschafft, Sie benötigen jedoch den rModifikator für eine umgekehrte Sortierung:

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

Überprüfen Sie den rModifikator nach n.

Antwort2

Sie können dies verwenden,

~]# 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

Für Ihren Code können Sie also Folgendes tun:

~]# grep -rc "Pattern" . | sort -k2 -n -r -t:

verwandte Informationen