在bash中合并某些行的行

时间:2017-10-27 14:55:37

标签: bash parsing

我正在使用bash解析一些数据而我无法确定如何执行此操作。我需要将这些行合并在一起,所以它看起来像这样:

70:54:D2:8D:82:9A 1 Internet
...

我有这3个文件输出。

Mac地址:

70:54:D2:8D:82:9A
F8:8E:85:84:4F:55
F4:6D:04:B0:C2:18
10:FE:ED:78:2A:44

频道号码:

1
4
1
8

和SSID:

Internet
ASUS
Free-WiFi
NetFree

有一种简单的方法吗?提前谢谢。

编辑:似乎有人已经问过这个问题here

2 个答案:

答案 0 :(得分:1)

您可以使用paste命令将文件的行附加在一起......

paste -d " " macs channels SSIds

这是一个完整的例子......

echo "123" > 1
echo "abc" > 2
echo "@#$" > 3
paste -d " " 1 2 3

123 abc @#$

echo "456" >> 1
paste -d " " 1 2 3

123 abc @#$
456

所以你可以看到,如果行数不匹配,你会得到一些略微偏斜的输出,所以你要确保这些行是1:1。

答案 1 :(得分:0)

  ]$ paste 1.txt 2.txt 3.txt
  70:54:D2:8D:82:9A 1   Internet
  F8:8E:85:84:4F:55 4   ASUS
  F4:6D:04:B0:C2:18 1   Free-WiFi
  10:FE:ED:78:2A:44 8   NetFree