Disons que j'ai deux fichiers comme ci-dessous :
file1
a 23
b 34
c 47
file2
a justin_beiber_sucks
b segmentation fault
c jackson
d nop
Maintenant ce que je veux c'est obtenir une différence de la première colonne de deux fichiers. Je le fais maintenant comme suit
$cat file1 awk '{print $1}'> f1
$cat file2 awk '{print $1}'> f2
$diff -u f1 f2
Mais cette approche semble attardée. Une approche plus délicate ?
Le problème est que je vois toujours pipe
comme une chose unidimensionnelle, mais ici c'est bidimensionnel. Je veux dire que l'entrée du différentiel doit provenir de deux sources différentes simultanément.
Le point de départ peut être l'awk script qui lira les deux fichiers, effectuera un filtrage et enregistrera le résultat dans un tableau associatif temporaire, ensuite il invoquera diff et fournira ses entrées.