【发布时间】:2019-04-04 02:26:57
【问题描述】:
寻找使用 awk/sed/bash 以所需格式打印的正确方法。
考虑一个包含以下内容的文件 (awk_test.txt),
Checkpoint number: ckpt.123
value1: 10
value2: 10
Checkpoint number: ckpt.234
value1: 20
value2: 25
如何从文件中提取数据并在新行中按以下格式打印?
ckpt.123,10,10
ckpt.234,20,25
我尝试了以下 awk 命令,但没有全部打印出来。
awk < awk_test.txt '/ckpt/{a=$NF} /value1/{b=$NF} /value2/{c=$NF} END {printf "%s,%s,%s\n",a,b,c}'
【问题讨论】: