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

从制表符分隔txt文件提取指定范围整数、小数及科学计数法数值

制表符分隔txt文件指定范围数值提取方案

需求说明

  • 输入文件为4行4列的制表符分隔txt,第一行为表头,第一列为行名
  • 需要提取第2到4行、第2到4列的所有数值(支持整数、小数、科学计数法格式)
  • 输出要求为空格分隔的连续数值串,末尾追加换行符\n

示例输入文件内容

component   sigma          h2           h2_se
G           -5.55758e-19   -0.0964725   26.3887
GxE         6.13144e-18    1.09647      26.3651
noise       0              0            0

期望输出

-5.55758e-19 -0.0964725 26.3887 6.13144e-18 1.09647 26.3651 0 0 0

错误尝试说明

此前的grep命令没有覆盖数值的负号、科学计数法标识、整数等多种格式,无法得到完整正确的结果:

  • grep -o '0.[[:digit:]]*' myfile:仅能匹配0开头的小数,漏配负数、非0开头数值、科学计数法数值
  • grep -o '[[:digit:]]*' myfile:仅能匹配数字片段,漏配负号、小数点、科学计数法标识,拆分后输出零散的数字内容

可行解决方案

使用awk按行号过滤、按字段提取即可精准实现需求,命令如下:

awk 'NR>1 {printf "%s %s %s ", $2,$3,$4}END{printf "\n"}' myfile

命令逻辑说明

  • NR>1:过滤掉第1行表头,仅处理第2到4行的有效数据
  • printf "%s %s %s ", $2,$3,$4:对每一行按顺序输出第2、3、4列的内容,列之间用空格分隔
  • END{printf "\n"}:所有行处理完成后在末尾追加换行符

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 12:27:07