有没有命令可以对 txt 文件中的小数进行四舍五入?

有没有命令可以对 txt 文件中的小数进行四舍五入?

我看到了这个邮政,但我想知道是否有更简单的命令来四舍五入小数。

我有一个包含数百万个数字的文件:

0.1
1.2
3.8

我想将它们四舍五入为整数

0
1
4

是否有一个简单的命令可以做到这一点?

答案1

您可以使用以下perl一行代码:

perl -i -pe 's/(\d*\.\d*)/int($1+0.5)/ge' file

-i选项将自动更改您的十进制数。

正则表达式\d*\.\d*将确保在原始文件中只有这些数字会被更改(即其他字符串将保持不变)

答案2

使用awk您发布的链接中的命令,您将获得类似以下内容:

awk '{printf("%d\n",$0+0.5)}' file

或者更简单,使用:

awk '{printf("%.f\n",$0)}' file

我想不出比这更简单的办法了;)

相关内容