
我希望能夠對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: