我有两个相同长度的文件,如:
0.99952 0.01
0.98927 0.02
0.98242 0.03
Run Code Online (Sandbox Code Playgroud)
和
-0.758 0.01
-0.745 0.02
-0.742 0.03
Run Code Online (Sandbox Code Playgroud)
我想将第一列数相加并将其打印在一个新文件中,并在第二列中包含相同的元素.输出应该是:
0.24152 0.01
0,24427 0.02
0,24042 0.03
Run Code Online (Sandbox Code Playgroud)
我试过了
paste file1 file2 | awk '{print ($1 + $2), $4}' > sum
Run Code Online (Sandbox Code Playgroud)
但输出是:
1.00952 0.01
1.00927 0.02
1.01242 0.03
Run Code Online (Sandbox Code Playgroud)
您在awk中使用无效参数编号($ 2而不是$ 3)
$1 $2 $3 $4
0.99952 0.01 -0.758 0.01
0.98927 0.02 -0.745 0.02
0.98242 0.03 -0.742 0.03
Run Code Online (Sandbox Code Playgroud)
有一个工作的例子:
paste data1 data2 | awk '{print ($1 + $3), $4}'
Run Code Online (Sandbox Code Playgroud)
单一awk方法:
$ awk 'NR==FNR{a[NR]=$1;next}{print $1+a[FNR],$2}' file1 file2
0.24152 0.01
0.24427 0.02
0.24042 0.03
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8800 次 |
| 最近记录: |