gpt4 book ai didi

bash - awk 以秒为单位的日期范围

转载 作者:行者123 更新时间:2023-11-29 09:18:32 25 4
gpt4 key购买 nike

我有一个记录文件,按日期存储我们系统的状态。生成它的脚本通过 cron 运行,因此文件不断变长。我写了一个脚本,遍历每一行来处理它,这花了很长时间。我听说 awk 在处理大型文本文件时要快得多。我的问题是我从未使用过它。是否可以使用 awk 获取日期范围内的所有条目?日期均以秒为单位,因为它们是使用 date +%s 生成的。这是我希望能够快速找到范围内数据的输出示例。因此,例如,我如何获取第一列介于 1344279903 和 1344280204 之间的所有行?

1344279903 |  0  | 0 | node  |  1
1344279904 | 0 | 0 | node | 2
1344279905 | 0 | 0 | node | 3
1344280202 | 0 | 0 | node | 1
1344280203 | 0 | 0 | node | 2
1344280204 | 99 | 0 | node | 3

最佳答案

您可以像这样使用条件表达式:

awk '$1 >= 1344279903 && $1 <= 1344280204 { print $0 }' data.txt

关于bash - awk 以秒为单位的日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11834434/

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