首页/系统/Linux 运维命令速查/场景:按时间窗提取日志
文本处理77 条

场景:按时间窗提取日志

排查某时段故障:sed 按起止模式截段、awk 按时间字段做区间过滤,先小范围验证再全量跑。

Linux 运维命令速查系统更新于 2026-10-12
场景截取指定时间段的日志行
组合sed 地址范围 / awk 时间比较

起止模式截段

起止模式截段
sed -n '/2026-10-12 10:00/,/2026-10-12 10:05/p' app.log | head -100

按时间字段过滤

按时间字段过滤
awk -v s='10:00:00' -v e='10:05:59' '$2>=s && $2<=e' app.log | head
awk '$1=="2026-10-12" && $2 >= "10:00:00"' app.log | wc -l
sed 范围是「首次匹配起点 → 首次匹配终点」;时间段在日志里多次出现时,用 awk 条件过滤才准确。

易错点

  • awk 的字符串比较要求时间格式定长/同构,先 head 几条确认字段与格式再写条件
  • 大日志先用 grep 缩小文件(如 grep '^2026-10-12' 拉出当天)再做区间过滤,速度更快

数据来源与参考

  • man 1 sed(GNU sed 手册)
  • man 1 awk(GNU gawk 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌