同一列中每两行的值减去并乘以常数

同一列中每两行的值减去并乘以常数

我有两个
这样的 原始文件

a1 a2 a3 a4 ....  
b1 b2 b3 b4 ....  

我想得到以下减法和乘法过程的结果,因此第三个原始数据将是以下所有项的结果

(b1-a1)*c (b2-a2)*c (b3-a3)*c (b4-a4)*c .....

答案1

尝试

awk -v c=12 '{print ;} 
      NR==1 { for(i=1;i<=NF;i++) F[i]=$i ;} 
      NR==2 { for(i=1;i<=NF;i++) printf "%d ",($i-F[i])*c ; printf "\n" ;} '

在哪里

  • NR(记录数)选择行。
  • NF是字段数。
  • 用于-v c=12给 awk 赋值
  • 如果线具有不同的“大小”,则不可预测的值

相关内容