我有一个脚本可以给我这样的输出
10.230.146.10: Terminal ID Gol
10.230.146.10: Far End ID pol
10.230.146.10: Number of E1s 4E1s
10.230.146.10: Packet link capacity 63Mbit/s
我需要输出为
10.230.146.10. Terminal ID. Far End ID. Number of E1s. Packet link Capacity
Gol. Pol. 4E1. 63Mbit/s
答案1
这应该有效:
awk '{if($1 == ip) {$1=""; printf "%s ", $0} else {ip=$1; printf "\n%s ", $0;}}' input.txt
它将在输出的开头打印一个额外的换行符,但我不认为这是一个问题。
对于以下示例输入:
10.230.146.10: A B
10.230.146.10: C D
10.230.146.11: E F
10.230.146.11: G H
该脚本产生:
10.230.146.10: A B C D
10.230.146.11: E F G H