AWK: 각 라인의 첫 번째 필드를 해당 라인의 각 후속 필드의 식별자로 인쇄합니다.

AWK: 각 라인의 첫 번째 필드를 해당 라인의 각 후속 필드의 식별자로 인쇄합니다.

필드 구분 기호로 공백이 있는 이와 같은 입력 파일이 있습니다.

AAABBB: 243.234.12.2 123.3.2 231.5.12 451.192.29.9
BBXDS: 324.22.32.5 235.235.283 234.239. 234.23.23.1 
DDF: 23.12.59.09 98.39.239.29 394.293.2.2

출력은 다음과 같아야 합니다.

AAABBB: 243.234.12.2
AAABBB: 123.3.2
AAABBB: 231.5.12
AAABBB: 451.192.29.9
BBXDS: 324.22.32.5
BBXDS: 235.235.283
BBXDS: 234.239.
.....

각 줄의 첫 번째 필드는 줄 끝까지 해당 줄의 각 열 앞에 새 줄로 인쇄되어야 하는 식별자입니다.

답변1

아주 간단합니다:

awk '{ for(i=2; i <= NF; i++) print $1, $i}' < input

각 줄에서 2부터 마지막 ​​필드( N필드 수 F)까지 반복하고, 필드 1을 인쇄하고 필드를 반복합니다.

관련 정보