从组织为列和行的文件中提取值

从组织为列和行的文件中提取值

我有一个包含五列的文件,格式如下:

1 213 1 545 0.0988697879 0.9084867680

像这样的有300行。我想从一行的第四列和第五列中获取值并执行数学运算,然后保存结果,并对所有 300 行重复该过程。

到目前为止,我发现的最接近解决方案的是使用以下命令构建数组

while IFS= read -a line; do   printf "Line number %d:\n" $i;   printf "%s\n" "${line[@]}";   let i++; done < "workfile.txt""

有哪些更好的方法可以解决这个问题?

答案1

可以使用 awk 操作字段,更多信息这里。以下单行代码将第 4 个和第 5 个字段相加,并将结果保存在输出文件中:

awk '{print $4 + $5}' input.file > output.file

相关内容