0

我有一个文件只包含 2 个数字。eash线上的一个数字。

4.1865E+02
4.1766E+02

我知道它的东西线 BHF = ($1 from line 1 - $1 from line 2) 但可以找到确切的命令。

如何对它们进行数学运算并将结果保存到变量中。

PS:这是使用

sed  -i -e '/^$/d' nodout15  
sed -i -e  's/^[ \t]*//;s/[ \t]*$//' nodout15  
awk ' {print $13} ' nodout15 > 15
mv 15 nodout15
sed  -i -e '/^$/d' nodout15  
sed -i -e  's/^[ \t]*//;s/[ \t]*$//' nodout15  
sed  -n '/^[0-9]\{1\}/p' nodout15  > 15
mv 15 nodout15
tail -2 nodout15 > 15
mv 15 nodout15

毕竟我有这两个数字,现在我不能做一些算术。如果可能的话,请告诉我一个简短的表格,让我当场做,而不是做所有这些杂耍。Nodout 是一个具有不同列长度的文件,所以我只对第 13 列感兴趣。由于所有行都不会在子文件中,因此删除了空行。然后只有那些以数字开头的行。然后是最后两行,因为它们显示了最终状态。它们之间的差异,会导致一个条件语句。所以我需要将它保存在一个变量中。

问候。

4

1 回答 1

1

awk

$ BHF=`awk -v RS='' '{print $1-$2}' input.txt`
$ echo $BHF
0.99

公元前

$ BHF=`cat input.txt | xargs printf '%f-%f\n' | bc`
$ echo $BHF
.990000
于 2012-02-29T12:34:41.937 回答