【发布时间】:2016-07-10 11:34:01
【问题描述】:
我有一个包含许多文件的文件夹,其中包含如下文本:
blabla
chargeableDuration 00 01 03
...
timeForStartOfCharge 14 55 41
blabla
...
blabla
calledPartyNumber 123456789
blabla
...
blabla
callingPartyNumber 987654321
我需要这样的输出:
987654321 123456789 145541 000103
我一直在尝试以下 awk:
awk -F '[[:blank:]:=,]+' '/findstr chargeableDuration|dateForStartOfCharge|calledPartyNumber|callingPartyNumber/ && $4{
if (calledPartyNumber != "")
print dateForStartOfCharge, "NIL"
dateForStartOfCharge=$5
next
}
/calledPartyNumber/ {
for(i=1; i<=NF; i++)
if ($i ~ /calledPartyNumber/)
break
print chargeableDuration, $i
chargeableDuration=""
}' file
无法让它工作。请帮忙。
【问题讨论】:
标签: regex text awk pattern-matching