Bash sortieren und verbinden Probleme

550
diego9403

Ich muss zwei Dateien zusammenfügen. Zuerst verwende ich commant sort und erstellte zwei neue sortierte Dateien. Als nächstes benutze ich join, aber es funktioniert nicht. Mein Skript:

sort -t ',' -r -k 4,4 file1.csv > sortf1.csv sort -t ',' -r -k 1,1 file2.csv > sortf2.csv join -t ',' -1 4 -2 1 sortf1.csv sortf2.csv > last.csv 

Und Fehler:

join: sortf1.csv:7: is not sorted: df-77,I,red,6674,6 join: sortf2.csv:4: is not sorted: 1967,XS,34,nf-54 
2
Vielleicht versteht der Join keine umgekehrt sortierten Dateien? Versuchen Sie es ohne, Sie können immer eine Sortierung durchführen. Nifle vor 8 Jahren 0
Join sollte verstehen. Die Ausgabedatei enthält einige Zeilen (last.csv). Ich habe versucht, mein Skript für die anderen Dateien (von mir erstellt) zu verwenden, und es funktioniert. diego9403 vor 8 Jahren 0
Zeigen Sie die Probeneingabe und Ihre gewünschte Ausgabe für diese Probeneingabe an. Cyrus vor 8 Jahren 0
Datei 1 :(; ist die Bruchlinie) nb-26, IV, rot, 3630,5; pv-63, IV, gelb, 6303,2; sj-90, IV, blue, 1957,2; Datei 2: 1951, XL, 95, zw-13; 1972, M, 48, zt-67; 1991, M, 72, ok-15; zuletzt: df-77,1944, S, 75, II, blau, 1911,2; df-77,1944, S, 75, III, blau, 3279,6; df-77,1944, S, 75, II, Violett, 5080,1; df-77,1944, S, 75, I, rot, 6674,6; diego9403 vor 8 Jahren 0

0 Antworten auf die Frage