1

我有两个这样的字段

Field1 : Field2 - 我将它们存储在这样的文件中:

X : 1234
X : 4321
Y : 123
Z : 1234
Z : 4321
Z : 357

我想把它变成这样:

X : 1234
    4321
Y : 123
Z : 1234 
    4321
    357

对于给定的 field1,field2 将不同,即 X 不能有 1234 和 1234,但两个不同的 field1 可以有相同的 field2,例如 X 和 Z 有 1234 和 4321。

如何使用 BASH/KSH 过滤我的输入文件以获取所需的输出文件?

4

1 回答 1

5
awk -F' *: *' '{if(x!=$1)x=$1;else $1="   "}1' input.txt

输出:

X : 1234
    4321
Y : 123
Z : 1234
    4321
    357
于 2012-05-30T10:49:51.230 回答