다음 파일을 고려하십시오.
foo,boo,900
foo,boo,900
foo,boo,850
필드( $3
)를 다음 레코드와 비교하고 차이가 50보다 크거나 같으면 해당 레코드를 인쇄해야 합니다.
즉, 위의 예에서 $3
두 번째 레코드부터 $3
세 번째 레코드 = 50이면 출력은 다음과 같습니다.
foo,boo,850
답변1
당신은 이것을 시도 할 수 있습니다awk
awk -F"," 'NR != 1 { if ((x - $3) >= 50) print $0; } { x = $3 }' file
변경 사항을 커밋할 때 줄을 인쇄 하지 않으려면 $1
다음 방법을 사용할 수 있습니다.
awk -F"," 'NR != 1 { if ($1 == fc && (x - $3) >= 50) print $0; } { x = $3; fc = $1; }' file