Tengo un archivo con una columna con nombres que se repiten varias veces cada uno. Quiero condensar cada repetición en una, mientras mantengo cualquier otra repetición del mismo nombre que no sea adyacente a otras repeticiones del mismo nombre.
Por ejemplo, quiero girar el lado izquierdo hacia el lado derecho:
Golgb1 Golgb1
Golgb1 Akna
Golgb1 Spata20
Golgb1 Golgb1
Golgb1 Akna
Akna
Akna
Akna
Spata20
Spata20
Spata20
Golgb1
Golgb1
Golgb1
Akna
Akna
Akna
Esto es lo que he estado usando: perl -ne 'print if ++$k{$_}==1' file.txt > file2.txt
Sin embargo, este método solo mantiene a un representante desde la izquierda (es decir, Golb1 y Akna no se repiten).
¿Hay alguna manera de mantener nombres únicos para cada bloque, mientras se mantienen nombres que se repiten en múltiples bloques no adyacentes?