몇 가지 방법이 있다는데 이런 식으로 할 수 있다.

BEGIN{
    i1 = 0; # 첫째 파일의 line index
    i2 = 0; # 둘째 파일의 line index
}
FILENAME==ARGV[1] {data1[i1]=$0; i1++; next} # 파일을 읽어서 배열에 저장
FILENAME==ARGV[2] {data2[i2]=$0; i2++; next} # 두번째 파일도
END{
    # 이제 파일을 갖고 논다
    j2 = 0;
    for(j1 = 0; j1 < i1; j1++) { # 첫째 파일의 모든 줄에 대하여 루프를 돈다
        print data1[j1];  # 그 내용을 인쇄
        if( 어떤 조건 ) continue; # 조건에 따라 건너 뛴다.
        for(; j2 < i2; j2++) { # 둘째 파일을 갖고 뭔가를 한다.
            print data2[j2]; # 둘째 파일의 내용을 인쇄하고 싶다면..
        }
    }
}
물론 실행은 이런 식으로 하면 된다.
awk -f 위의_스크립트_파일 첫째파일 둘째파일 > 결과파일


신고
posted by 신묘군