awk'! A[$0]++' 무거운 원리 분석
원문
많은 사람들이 awk' 를 알고 있습니다! A [$0]++'파일은 텍스트에서 중복된 행을 제거할 수 있지만, 도대체 어떻게 무거운지 잘 모르기 때문에 이 명령을 따로 분석해 보겠습니다.
우선 이 명령이 print $0 을 암시하는 것임을 알아야 합니다. 전체 명령은 다음과 같습니다.
awk 는 다음 세 가지 경우를 false 로 결정하고 다른 경우는 true 입니다.
으로 강제 변환되므로 위의 awk 문의 원리는 판단입니다! A[$0]++ 의 값으로, true 인 경우 현재 행을 인쇄하고 false 인 경우 현재 행을 인쇄하지 않습니다.
분석 시작! A[$0]++ 하지만 먼저 awk 에서 연산자의 우선 순위 (높음부터 낮음까지) 를 살펴봐야 합니다.
여기서 a[$0] 배열 값을 간단한 변수로 바꿀 수 있습니다.
지금 한눈에 알 수 있는 것이 아니라, 이전 예시로 대체해 보십시오.
분석은 다음과 같습니다.