다음 날짜가 있습니다.
random check/1 -0.02
random check/1 -0.05
random tell/1 -0.01
random tell/2 -0.02
random checking -0.00
두 번째 열을 정렬한 다음 세 번째 열을 정렬해 보았습니다. 나는 그것을 사용했다 sort -n -k2,2 -k3,3 file
. 그러나 그것은 내가 찾고 있는 결과를 제공하지 않습니다.
출력은 다음과 같아야 합니다.
random check/1 -0.05
random check/1 -0.02
random checking -0.00
random tell/1 -0.01
random tell/2 -0.02
그런 다음 그것을 고유하게 만들고 싶습니다. 따라서 최종 출력은 링크여야 합니다.
random check/1 -0.05
random checking -0.00
random tell/1 -0.01
random tell/2 -0.02
기본적으로 두 번째 열, 세 번째 열, 두 번째 열 순으로 정렬하기 때문에 최악의 숫자만 보입니다.
답변1
sort -nk3,3 file | sort -uk2,2
답변2
sort -k2,2 -k3,3n | awk '$2!=s;{s=$2}'
두 번째 필드의 데이터를 정렬한 다음 세 번째 필드를 숫자순으로 정렬합니다. awk를 사용하여 두 번째 필드의 첫 번째 항목을 인쇄합니다(두 번째 필드가 저장된 값과 다른 경우 해당 줄을 인쇄한 다음 두 번째 필드를 저장합니다).