Shell awk中的长整除

Shell awk中的长整除,shell,awk,Shell,Awk,我想去掉字段的最后一个数字,然后对生成的数字执行一些操作,为此我运行以下awk命令: awk '{if($8 == 346586 && (int($1/10))%10 == 0) {print int($1/10), $1}}' input_data 由于1美元很长,我得到了这种结果: 2.02152e+17 2021523922099868685 有什么线索可以帮我解决这个问题吗 awk -M '$8 == 346586 && int($1/10))%10 =

我想去掉字段的最后一个数字,然后对生成的数字执行一些操作,为此我运行以下awk命令:

awk '{if($8 == 346586 && (int($1/10))%10 == 0) {print int($1/10), $1}}' input_data
由于1美元很长,我得到了这种结果:

2.02152e+17 2021523922099868685

有什么线索可以帮我解决这个问题吗

awk -M '$8 == 346586 && int($1/10))%10 == 0 {print int($1/10), $1}' input_data

可能对你有用

它必须与
printf
格式有关。你能展示一下
input\u data
是如何工作的吗?看看这个解释如何在
awk中处理任意精度的整数。
不是关于打印。无论如何,它不应该包括这个2.02152e+17 2021523922099868685。它应该不满足条件(int(%1/10))%10==0它应该包括205这样的数字(即,如果最后第二个数字是0),而不是215,例如。