Qu'est-ce qu'un moyen * NIX de supprimer la redondance dans un cas où j'ai des comparaisons par paires comme celles-ci dans deux colonnes
    A B
    B A
    A C
    A D
    C A
    D A 
    B C
    C B
 
 A B et B A représentent la même comparaison et je voudrais supprimer cette redondance de l'ensemble de données. Le résultat final devrait être
A B
A C
A D
B C
 Réponse acceptée :
doit () 
{ 
    awk '{
           key=$1<=$2? $1 FS $2 : $2 FS $1; 
           if (!seen[key]) print $1,$2
           seen[key]=1
    }'
}
 $ doit <test
A B
A C
A D
B C
$
 (ou, devenir plus terrifiant avec ça parce que la réponse de Chris Down est si douce)
awk '!seen[$1<=$2? $1 FS $2: $2 FS $1]++ {print $1,$2}'
 qui pourrait être encore réduit si vous ne vous souciez pas des espaces dans vos données
awk '!seen[$1<=$2? $1 FS $2: $2 FS $1]++'
 )
 Le FS est la variable "séparateur de champs" d'awk, utilisée ici pour garantir que les limites entre les champs clés seront correctement identifiées. Mon original les avait exécutés ensemble, $1$2 , qui comme l'a souligné Stéphane Chazelas aurait traité A BC et AB C comme doublons.