입력:
Key1: value1 value2 value3
Key2: value1 value2 value3
value4 value5
Key3: value1 value2 value3
value4 value5 value6
value7 value8
Key4:
Key5: value1
산출:
Key1: value1 value2 value3
Key2: value1 value2 value3 value4 value5
Key3: value1 value2 value3 value4 value5 value6 value7 value8
Key4:
Key5: value1
들여쓰기한 줄을 이전 줄의 끝으로 어떻게 이동합니까?
- 들여쓰기된 줄의 공백 수는 일정합니다.
- 수십 개의 키가 있으며 각 키에는 다음 줄에 들여쓰기된 값이 있을 수 있습니다.
- 키 값이 여러 줄에 배치될 수 있음
답변1
awk 'NR == 1 {printf("%s", $0); next}
/^ / {
for(i=1; i<=NF; i++){
printf(" %s", $i)
}
next
}
{printf("\n%s", $0)}' input > output