如何将数据压缩到以时间戳开头的单行
Posted
技术标签:
【中文标题】如何将数据压缩到以时间戳开头的单行【英文标题】:How to condense data to single row starting with timestamp 【发布时间】:2017-09-07 09:52:17 【问题描述】:我有一组需要按时间戳压缩的数据。给定数据:
06:59:27: Call
06:59:28: Call Info: Voice
device[iPhone]
rcv=[10.10.123]
xmt=[10.10.123]
Media Server[Local]
A rcv=[10.10.123]
A xmt=[10.10.123]
06:59:28: Call Transfer
我需要将行向上移动,以便所有数据都按时间戳在一行中:
06:59:27: Call
06:59:28: Call Info: Voice device[iPhone] rcv=[10.10.123] xmt=[10.10.123] Media Server[Local] A rcv=[10.10.123] A xmt=[10.10.123]
06:59:28: Call Transfer
【问题讨论】:
你说你想要你的数据在一行,但你显示三行?你说你想要它“按时间戳”,但是你有两行具有相同的时间戳?很难理解你的意思。 【参考方案1】:这是我想出的:
awk '/^([0-9]2:)3/if(b)printf "\n";b=1 printf $0 " "' filename.txt
输出上的间距与您的不完全相同:
06:59:27: Call
06:59:28: Call Info: Voice device[iPhone] rcv=[10.10.123] xmt=[10.10.123] Media Server[Local] A rcv=[10.10.123] A xmt=[10.10.123]
06:59:28: Call Transfer
如果您需要输出具有精确的间距,它会稍微复杂一些。如果您对它的工作原理有任何疑问,请告诉我。
【讨论】:
以上是关于如何将数据压缩到以时间戳开头的单行的主要内容,如果未能解决你的问题,请参考以下文章