
명령 의 출력을 정렬하고 싶습니다 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: