首页 > 解决方案 > 使用 sed 或 awk 之类的脚本清理 linux 中的文件

问题描述

我有一个使用期望脚本创建的文件,用于从物联网设备中提取一些信息。该文件如下所示:

1: 4.9 A
1.99 kW
39483.3 kWh
1.99 kW
1: 1.99 kW

我需要删除除数值以外的所有内容,因此需要删除“1:”、“A”、“kW”和“kWh”。我花了几个小时试图让 sed 或 awk 做我需要的事情,但我对它们并不熟悉,经过一堆指南后,我仍然无法让它正常工作。非常感谢熟悉这些工具的人提供的任何帮助。

标签: linuxubuntuawksed

解决方案


我认为这可能是您真正想要做的事情:

$ awk '{print $(NF-1)}' file
4.9
1.99
39483.3
1.99
1.99

即只打印每行的倒数第二个字段。


推荐阅读