AND 논리 연산자에 대한 기본적인 질문입니다. 열 1과 2의 값을 기준으로 데이터 파일 niveles.csv에서 일부 필드를 추출하려고합니다. "field1 = date 및 field2 = 영역을 입력 한 다음 3 ~ 5 필드를 인쇄 할 때"라는 awk 문장을 작성하고 싶습니다. . bash는 스크립트 내부 AWK의 문장Awk AND 연산자
date=01-08-2012
area=8
awk 'BEGIN {FS=";"} $1 ~ /'$date'/ && $2 ~ /'$area'/ { print $1 " " $2 " " $3 " " $4 " " $5 }' niveles-rams.cs
입니다 그러나 이것은 단지 지역 번호가 내부에 8이 세 가지 경우에 대한 필드를 제공
01-08-12;1;0;0;0
01-08-12;2;1;1;1
01-08-12;3;0;0;1
................
처럼
내 데이터 파일은 8, 18 (보이는 그리고 28) 단지 8 구역의 데이터 만 필요합니다.
01-08-2012 8 0 0 0
01-08-2012 18 2 2 1
01-08-2012 28 2 1 0
미리 감사드립니다. 그것은 숙련 된 사용자를위한 간단한 질문입니다.
감사합니다 , 나는 ~과 == – pacomet
의 차이를 알지 못했습니다. 그러지 마세요! awk 스크립트를 구성하는 쉘 변수의 값에 액세스하는 방법은 http://cfajohnson.com/shell/cus-faq-2.html#Q24를 참조하고 여기 @ Barmar의 대답을 참조하십시오. –
@EdMorton : 이것이 셸 변수에 액세스하는 올바른 방법이 아니라는 것에 동의합니다 ... 솔루션이 OP 솔루션 작업을 수행하도록 제공되었습니다 ... – Guru