입력에 따라 특정 필드를 인쇄하는 방법은 무엇입니까?

입력에 따라 특정 필드를 인쇄하는 방법은 무엇입니까?

텍스트 파일에 2개의 열이 있다고 가정해 보겠습니다. 하나는 와인 이름이고 다른 하나는 와인 병 수에 대한 숫자입니다.

실행 시 사용자가 숫자 1-30을 입력하면 해당 숫자가 재고에 남아 있는 모든 와인 이름을 알파벳순으로 표시하는 스크립트를 만들고 싶습니다.

어떻게 해야 합니까?

답변1

필드가 공백으로 정의된 경우 간단히 다음을 수행할 수 있습니다.

awk '$2==30' file

file그러면 두 번째 필드가 인 모든 행이 인쇄됩니다 30. 첫 번째 필드인 이름만 원하는 경우 다음을 사용하세요.

awk '$2==30{print $1}' file

그리고 이를 알파벳순으로 얻으려면 정렬을 통해 출력을 전달합니다.

awk '$2==30{print $1}' file | sort

관련 정보