You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用awk或sed为数据集每行添加对应设备标签?

用AWK格式化设备数据文件

需求说明

现有一个包含多设备数据的文件,格式如下:

device: thing1

data1 data2 data3 data4

data1 data2 data3 data4

...

device: thing2

data1 data2 data3 data4

data1 data2 data3 data4

...

需要将其转换为每行数据前加上对应设备名的格式:

thing1 data1 data2 data3 data4

thing1 data1 data2 data3 data4

...

thing2 data1 data2 data3 data4

thing2 data1 data2 data3 data4

...

解决方案

使用以下AWK命令即可实现:

awk '/device:/ { device = $2; next } NF { print device, $0 }' data_sets.txt

命令解释

  • /device:/ { device = $2; next }:匹配包含device:的行,将该行第二个字段(即设备名)存入变量device,next关键字跳过当前行的后续处理,避免输出device:行本身。
  • NF { print device, $0 }:NF表示当前行的字段数大于0(即非空行),此时输出已保存的设备名,再拼接当前行的所有数据内容。

问题分析

你之前的命令仅处理了device:标记行,还错误地将设备名与device:行内容一起输出,完全没有处理后续的数据行。上述命令区分了设备标记行和数据行,分别完成设备名记录、数据行加前缀的操作,精准匹配需求。

内容的提问来源于stack exchange,提问作者sidsmokes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 20:05:24