You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用grep从Bitbucket Pipeline输出文件提取结果表格?

可行,具体操作方法如下

完全可以通过正则表达式结合grep工具提取文件底部的测试结果表格,以下是几种实用的操作方法:

方法1:定位表格表头并捕获后续所有行

如果你知道测试表格的表头内容(比如| 测试名称 | 状态 | 耗时 |),可以用grep的-A参数抓取表头及之后的所有行:

grep -A 9999 "| 测试名称 | 状态 | 耗时 |" pipeline_output.txt

-A 9999表示匹配到目标行后,再显示后续9999行(数值可根据表格长度调整),由于表格在文件底部,这会完整捕获整个表格。

方法2:提取底部所有符合表格格式的行

如果你的测试表格是标准的竖线分隔格式(每行以|开头和结尾),可以结合tac(反转文件)和grep筛选出底部的表格行:

tac pipeline_output.txt | grep -B 9999 -v "^[^|].*[^|]$" | tac
  • tac将文件内容反转,从最后一行开始处理
  • grep -B 9999 -v "^[^|].*[^|]$"排除所有不以|开头或结尾的行,并保留这些行之前的9999行(即所有连续的表格行)
  • 最后用tac反转回原顺序,得到完整的测试表格

方法3:通过行号定位表格起始位置

先找到表格分隔线(比如|---|---|---|)的行号,再用tail提取该行到文件末尾的内容:

# 获取表格分隔线的行号(取最后出现的分隔线,对应底部的表格)
table_start=$(grep -n "^|---.*---|$" pipeline_output.txt | tail -n1 | cut -d: -f1)
# 从该行开始提取到文件末尾
tail -n +$table_start pipeline_output.txt

注意:请根据你实际的Bitbucket Pipeline输出表格结构,调整上述命令中的正则匹配内容(比如表头文本、分隔线格式)。

内容的提问来源于stack exchange,提问作者Smh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 05:00:20