Concatenation de chaine de caractère dans une boucle read $line
Bonjour, je crée un .sh qui récupère une description dans une page web.
https://www.gokishop.eu/html/fr/arti...57496-all.html
Je dois récupérer la description:
Si goki a réussi à les assembler, vos clients sont bien
entendu capables de les défaire. Mais vont-ils y arriver ?
Des petits jeux de patience pour les grands amateurs de
puzzles ! Le set de 18 jeux propose 6 modèles différents
pour toute la famille.
Le petit soucis, c'est que pour le faire avec un read line, tout est sur des lignes différentes. Je voudrais donc les concaténer.
Voici le script fonctionnel que vous pouvez copier coller, il se contente d'afficher les lignes 1 par 1. Je n'arrive pas à faire fonctionner la concaténation, pouvez vous m'aider, merci.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
|
#arg pour fournir plusieurs URL au script
for arg
do
while read line
do
#récupérer la description du produit
if echo "$line" | grep '<div class="detailtopic">Description</div>'>/dev/null 2>&1
then
found=0
description=""
while read nextLine;
do
#ce if permet de vérifier si on est à la fin de la description qui se termine par </td>
if echo "$nextLine" | grep -q "</td>"
then
found=1
else
found=0
fi
if [ $found -eq 1 ]
then
break
fi
#Lecture de la description ligne par ligne
descr=$nextLine
echo $descr
#tentative désespérer de concaténation
description=$description$descr
done
#lecture finale de la variable concaténé qui ne fonctionne pas.
echo $description
fi
done < <(curl -s $arg)
done |
Vous pouvez lancer le script ainsi :
Code:
1 2 3 4 5 6 7 8
| iMac-de-Quentin:Desktop passio$ ./script.sh https://www.gokishop.eu/html/fr/articles-saisonniers/rentr-e-des-classes/casse-t-tes-et-puzzles/item-2-57496-57496-all.html
Si goki a réussi à les assembler, vos clients sont bien
entendu capables de les défaire. Mais vont-ils y arriver ?
Des petits jeux de patience pour les grands amateurs de
puzzles ! Le set de 18 jeux propose 6 modèles différents
pour toute la famille.
pour toute la famille. jeux propose 6 modèles différents ? |