2016-05-10 9 views
-3

Ich habe eine Datei, die in folgendem Format ist:Decipher verschiedene Spalten in der Bash-Datei

6,test,A,B,C,D 
6,test,A,B,C,F 
7,test,A,B,C 
7,test,A,B,D 

Ich mag würde, etwas zu schreiben, das die verschiedenen Spalten ausgibt. Zum Beispiel:

6 - column 6 is different 
7 - column 5 is different 

Spalten werden immer durch ein Komma und die erste Spalte wird immer die zwischen den Zeilen eindeutige Kennung getrennt werden.

+0

Mögliche Duplikat [Gibt es eine Möglichkeit zu ‚uniq‘ durch Spalte?] (Http://stackoverflow.com/questions/ funktioniert 1915636/is-there-a-way-to-uniq-by-column) –

+0

Das ist NICHT das, wonach ich suche. – user3299633

Antwort

1

awk zur Rettung!

hier ist der Prototyp, der, befestigen Sie den Text für Ihren Bedarf

$ awk -F, '$1 in a{n=split(a[$1],p); 
        for(i=2;i<=n;i++) 
         if(p[i]!=$i) print $1,i " different"; next} 
        {a[$1]=$0}' file 

6 6 different 
7 5 different 
+0

Sie Sir, sind ein Gentleman und ein Gelehrter. – user3299633

Verwandte Themen