0

我一直在寻找现有的答案,但不知所措。

我需要一个纯文本文件:

1 - 将小数四舍五入到十分位

2 - 最后一组数字需要四个字符长,使用零填充

3 - 删除句点 - 找到 sed 解决方案

4 - 删除空格 - 找到 sed 解决方案

这是我正在使用的文件的示例

5.41   3.08  795
4.82   2.69   19
3.60   2.83    8
4.24   3.10 1559

需要改为:

54310795
48270019
36280008
42311559

谢谢 - 安迪

4

1 回答 1

3

您可以使用 awk 一次性完成:

 awk '{$0=sprintf("%.1f%.1f%04d", $1,$2,$3);gsub(/\./,"")}1' file 

测试:

kent$  cat file
5.41   3.08  795
4.82   2.69   19
3.60   2.83    8
4.24   3.10 1559

kent$  awk '{$0=sprintf("%.1f%.1f%04d", $1,$2,$3);gsub(/\./,"")}1' file
54310795
48270019
36280008
42311559
于 2013-04-16T20:53:10.427 回答