Bash-Join-Befehl

8

Infile1:

%Vor%

Infile2:

%Vor%

Wie verbinde ich diese Dateien mit dem Unix-Join-Befehl, um diese Ausgabe zu erhalten:

%Vor%

Dogbanes Antwort funktionierte, aber ... wenn ich Dogbanes anwende, antworte auf diese Datei:

%Vor%

und das:

%Vor%

Sie treten nicht bei:

%Vor%

Das zweite Szenario ist tabulatorgetrennt, also habe ich -t \t

verwendet     
AWE 13.01.2012, 11:13
quelle

3 Antworten

11

Erste sort beide Dateien. Verwenden Sie dann join , um am ersten Feld beider Dateien teilzunehmen. Sie müssen die Ausgabe auch über sed pipen, wenn Sie den Speicherplatz entfernen und somit a a in aa konvertieren möchten. Dies ist unten gezeigt:

%Vor%     
dogbane 13.01.2012, 11:20
quelle
11

Funktioniert für mich (fast). Sie sollten -t $'\t' für das Tab-Zeichen angeben, nicht nur -t \t . Bash interpretiert \t nicht, außer in $'' quotes.

%Vor%     
choroba 13.01.2012 15:22
quelle
4

Dies sollte für beide Fälle funktionieren:

%Vor%

Ausgabe für Fall eins:

%Vor%

Ausgabe für Fall zwei:

%Vor%     
Kent 13.01.2012 15:49
quelle

Tags und Links