gpt4 book ai didi

linux - 仅在 shell 脚本中一小时后提取数据

转载 作者:太空宇宙 更新时间:2023-11-04 12:26:09 25 4
gpt4 key购买 nike

我有一个巨大的日志文件,其中包含每分钟变化的时间戳,格式如下:

2017-06-16 00:00:22 - Meter_1_L12_15_3_0 state updated to 124.035
2017-06-16 00:01:54 - Meter_1_L12_15_3_0 state updated to 124.041
2017-06-16 00:02:22 - Meter_1_L12_15_3_0 state updated to 124.047
2017-06-16 00:04:09 - Meter_1_L12_15_3_0 state updated to 124.053

我想在 shell 脚本的帮助下准确地在一小时后提取日志数据,格式如下:

2017-06-16 00:00:22 - Meter_1_L12_15_3_0 state updated to 124.035
2017-06-16 00:59:51 - Meter_1_L12_15_3_0 state updated to 124.391
2017-06-16 01:00:22 - Meter_1_L12_15_3_0 state updated to 124.396
2017-06-16 01:58:22 - Meter_1_L12_15_3_0 state updated to 124.718

请帮助我完成这个任务。谢谢

编辑:Reevanshi 评论如下解释:
我想提取每个小时的每个第一个和最后一个条目,例如任何一个小时,例如凌晨 2:00 到凌晨 3:00,它们之间有 100 个条目,那么我只想要该时间戳之间的第一个和最后一个条目。

最佳答案

您的输入和输出数据彼此不对应,但基本上,我认为您希望在小时发生变化时输出上一行和当前行。

因此,如果我将输入字段分隔符设置为“空格”或冒号,我可以在字段 2 ($2) 中选择小时,这给出了:

awk -F'[ :]' '{if($2!=hr){hr=$2;print prev;print}} {prev=$0}' YourLogFile

关于linux - 仅在 shell 脚本中一小时后提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44623844/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com