输入:
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