sto cercando di combinare due file come qui di seguito (intersezione)Linux Unire due file per colonna
ID Name Telephone
1 John 011
2 Sam 013
3 Jena 014
4 Peter 015
secondo file Test2.txt
1 Test1 Test2
2 Test3 Test4
3 Test5 Test6
4 Test7 Test8
5 Test7 Test8
6 Test7 Test8
7 Test7 Test8
8 Test7 Test8
9 Test7 Test8
risultato finale Poi
ID Name Telephone Remark1 Remark2
1 John 011 Test1 Test2
2 Sam 013 Test3 Test4
3 Jena 014 Test5 Test6
4 Peter 015 Test7 Test8
Mi piace quanto segue,
awk -F"\t" '
{key = $1 }
NR == 1 {header = key}
!(key in result) {result[key] = $0; next}
{ for (i=2; i <= NF; i++) result[key] = result[key] FS $i }
END {
print result[header]
delete result[header]
PROCINFO["sorted_in"] = "@ind_str_asc"
for (key in result) print result[key]
}
' Test1.txt Test2.txt > result.txt
E ho appena notato che questo è un set dell'Unione. Incluso tutti i dati Test1 e Test2.
Mi piacerebbe mostrare solo per caso Intersection come quello che mi aspettavo risultato. (1, 2, 3, 4) solo
Avete qualche idea? Grazie!
Questa è, ovviamente, la risposta giusta. – ghoti