如何對 grep -rc 的輸出進行反向排序

如何對 grep -rc 的輸出進行反向排序

我希望能夠對grep -rc命令的輸出進行排序,

我目前正在使用命令:

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

然而列表仍然是從低到高排序,而不是從高到低...它也會在使用時列印出確切的輸出:

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

所以我想要的是輸出:

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

被分類為

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

答案1

你幾乎已經完成了,只是你需要r修飾符進行反向排序:

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

檢查r之後的修飾符n

答案2

你可以用這個,

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

所以對於你的程式碼,你可以這樣做

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

相關內容