awk를 사용하여 여러 파일 소스에서 원하는 출력을 얻는 방법

awk를 사용하여 여러 파일 소스에서 원하는 출력을 얻는 방법

두 개의 파일이 있습니다.

파일 1:

A,D
B,E
C,F

파일 2:

G,H,I
J,K,L

을 사용하여 awk다음을 인쇄하고 싶습니다.

A,D
B,E,I
C,F,L

awk이를 달성하기 위해 어떻게 사용할 수 있습니까 ?

답변1

아픈생각하다n행의 추가 필드는 file2다음에 추가되어야 합니다.마지막 nfile1:

awk -F, -v OFS=, 'FNR==NR {a[FNR]=$3; next} {print $0, a[FNR]}' <(tac file2) <(tac file1) | tac
paste -d, <(tac file1) <(cut -d, -f3- <(tac file2)) | tac

이러한 솔루션은 첫 번째 줄에 후행 쉼표를 추가합니다. 위의 내용을 파이핑하여 제거할 수 있습니다.sed 's/,$//'

관련 정보