정렬 기능이 있는 여러 grep 명령

정렬 기능이 있는 여러 grep 명령

학생 성적 목록이 포함된 텍스트 파일이 있습니다.

Andrew cooking A
Andrew cooking B
Andrew computing F
Steven java C
Steven python E
Ben C++ D
Ben python C
Jamie java E
Jamie C++ E
Jamie C++ B
Jamie python E
Gerry python E
Phil python F

나는 grep 명령을 사용하여 최고에서 최악까지 순위가 매겨진 모든 Python 결과를 표시하려고 합니다. 파일 이름은 입니다 a.txt. 이것을 시도해 보았지만 grep python a.txt | sort -d작동하지 않아서 도움을 구하고 있습니다. 감사해요

답변1

다음 명령을 사용하십시오.

awk '$2=="python"{print}' a.txt | sort -dk3

두 번째 필드가 python전체 줄을 인쇄하여 sort세 번째 필드에 배치하는 경우.

답변2

익숙하지 않은 경우 awk다음 해결 방법을 더 쉽게 이해할 수 있습니다.

grep "python" a.txt | sort -dk 3 | cut -d " " -f 1,3
  • grep특정 단어가 포함된 줄 선택

  • sort세 번째 키를 기준으로 내림차순 정렬

  • cut"python"이라는 단어를 제거합니다. 모든 줄에 나타나면 그림에 어떤 정보도 가져오지 않습니다.

결과:

Ben C
Gerry E
Jamie E
Steven E
Phil F

관련 정보