Aujourd'hui, nous sommes à la recherche d'un moyen qui nous permettrait de suivre l'exécution d'un script traitant un nombre important de données via une boucle.
Dans le cas de nos URLs, nous souhaitons par exemple savoir à chaque fois qu'une nouvelle ligne a bien été créée dans notre tableau.
Pour cela, nous pouvons ajouter une fonction echo dans la boucle, par exemple :
echo "L'URL $url a bien été traitée.";
De cette manière, la liste de toutes les URLs traitées s'affiche dans le terminal au moment de l'exécution du script.
Voici un exemple en image :
Exemple de script avec ajout d'une fonction echo
Vu dans le terminal après l'exécution du script
Pour créer une interaction avec l'utilisateur, on peut exploiter une des caractéristiques de la fonction read qui après avoir lu une donnée attend une validation par ENTER avant de poursuivre le script.
On pourrait donc enrichir le script précédent comme ceci :
echo "L'URL $url a bien été traitée. Appuyer sur ENTER pour continuer.";
read;
Voici ce qu'on obtient :
La liste d'URLs à traiter (test)
Le nouveau script
Exécution du script dans le terminal
Le tableau html en output
D'après ces captures d'écran, on voit que notre programme n'a pas fonctionné comme on l'aurait souhaité. On constate que :
- Il n'y a plus eu d'interaction dans le terminal avec l'utilisateur dès que le nom du fichier output a été saisi.
- Seules la première et la troisième ligne du fichier urls.txt ont été insérées dans le tableau !
Si vous avez une explication pour ce mystérieux résultat ou bien une autre solution, vous pouvez laisser un message aux Bras Cassés dans les commentaires :) !
Aucun commentaire:
Enregistrer un commentaire