2

私はこのようなファイルを持っています -

1 2 3
1 4 5
a z 3
a 3 4
a f g
b b g

同じ最初のフィールドを持つ行を含む複数のファイル (グループと同じ数) に分割したいと考えています。

 1 2 3
 1 4 5

 a z 3
 a 3 4
 a f g

 b b g

それ、どうやったら出来るの?私は試しuniq --all-repeated=separate -w 32ましたが、重複を見つけるときに最初の列だけでなく、完全な行を考慮します。

4

2 に答える 2

1

少し良いファイル命名方法:

$ ls
file

$ awk '!($1 in a){a[$1]="file"++i}{print > a[$1]}' file

$ ls
file  file1  file2  file3

$ cat file1
1 2 3
1 4 5

$ cat file2
a z 3
a 3 4
a f g

$ cat file3
b b g
于 2013-10-04T19:18:25.973 に答える