入力する:
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