Bonjour,
J'ai écrit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
awk -F';' '{ if (/[0-9][0-9]*%/) x=`echo "$line" | awk '{ gsub(/^.*;(/,"")}' | awk '{gsub(/%).*$/,"")}'`; print $1,";",$2,";",$3,";";$x ; else print $0,";100";}' affiliation1.csv > affiliation.csv
Pour récupérer le 80 de
pal231; Gani Aldashev ;(80%) Théorie Économique, Modélisation, Application (THEMA), Université de Cergy-Pontoise
J'ai l'erreur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
-bash: syntax error near unexpected token `('
J'ai cherché partout autour des (, j'ai remplacé les sed par des gsub, décomposé et recomposée la ligne de code, mais je pense que l'erreur doit se trouver dans
Code : Sélectionner tout - Visualiser dans une fenêtre à part
x=`echo "$line" | awk '{ gsub(/^.*;(/,"")}' | awk '{gsub(/%).*$/,"")}'`
Peut-être que ce n'est pas une bonne idée d'imbriquer la recherche du pourcentage dans l'awk, mais je ne sais pas comment récupérer cette valeur autrement :
il faudrait une boucle
si tu trouves "%" dans la ligne, alors
- tu extrait les deux chiffres devant
- tu affiches avec awk la ligne entière ";" les deux chiffres
sinon
- tu affiches la ligne entière brute
fin si

de sorte à avoir :
pal231; Gani Aldashev ;(80%) Théorie Économique, Modélisation, Application (THEMA), Université de Cergy-Pontoise; 80
Merci pour votre aide !