Bonjour,
Voici un petit exercice sur lequel je coince :
En entrée de la commande join, on a deux fichiers f1 et f2.
Code f1 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 a1;A b2;B d4;D e5;E m12;MVoici ce que l'on veut obtenir en les rapprochant;
Code f2 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 a1;a b2;b c3;c e5;e z26;z
La jointure se fait sur le premier champ de chaque fichier.
enregistrement:
f1 . . . . . . . . . . f2 . . . . . . . . . . f3(sortie)
Existe . . . . . . .Existe . . . . . . . prendre les données de f2
Existe . . . . . . .N'existe pas . . prendre les données de f1
N'existe pas . .Existe . . . . . . . prendre les données de f2
En sortie, on cherche donc à avoir :
Code f3 : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 a1;a b2;b c3;c d4;D e5;e m12;M z26;z
voici une première approche, mais non satisfaisante :
Comment faire ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 liam@HAL42:~/projets/Test_cmd_shell_21$ ./zjoin.sh cat xjoinf1.csv -n 1 a1;A 2 b2;B 3 d4;D 4 e5;E 5 m12;M cat xjoinf2.csv -n 1 a1;a 2 b2;b 3 c3;c 4 e5;e 5 z26;z join -t";" -a1 -a2 xjoinf1.csv xjoinf2.csv > xjoinf12.csv cat xjoinf12.csv -n 1 a1;A;a 2 b2;B;b 3 c3;c 4 d4;D 5 e5;E;e 6 m12;M 7 z26;z
Partager