Pour rendre le code plus agréable à lire, les commentaires ont été mis en vert et les bouts du code HTML en bleu. Une mise en page basique a été ajoutée pour mettre en valeur la structure du code HTML et pour la distinguer de celle du code shell.
Ces opérations ont amélioré la lisibilité du code, cependant la fonctionnalité du code (s'il va être copié/collé à partir de cette page) ne peut pas être garantie à cause des caractères de fin de ligne qui ont été ajoutés.
Si vous voulez utiliser le script et lire le code sans les fins de ligne ajoutés, vous pouvez télécharger directement le fichier tableau.sh.
remonter#!/bin/bash################ SAISIE DES DONNEES PAR UTILISATEUR ##############################echo ""; echo "*** Repertoire contenant les listes des URL :"; read rep; echo ""; echo "*** Nom pour le fichier ou sera enregistre le tableau :"; read nf;############ AVERTISSEMENT CONCERNANT LES ACTIONS DU SCRIPT #####################echo ""; echo "*** Ce script va creer les repertoires:"; echo ""; echo " [`pwd`/documentation]"; echo ""; echo " *******avec le fichier $nf.html contenant un tableau par usage"; echo ""; echo " [`pwd`/pages-aspirees]"; echo " [`pwd`/dump-text]"; echo " [`pwd`/contextes]"; echo ""; echo "***Taper une touche pour commencer!!!"; read touche;###################Création des répertoires de travail #########################mkdir documentation; mkdir pages-aspirees; mkdir dump-text; mkdir contextes;################### Debut du fichier html ######################################echo "<html> <head> <title>TABLEAU DE LIENS : $nf$numREP</title> <meta charset=\"ISO-Latin 8851\"></meta> </head> <body> <h1>Tableaux pour $nf</h1>" >>documentation/$nf.html;############# DEBUT de la boucle principale : LECTURE DES FICHIERS #############for file in `ls $rep` {#compteur pour le nombre d'usages (de fichiers)numREP=$[$numREP + 1] ;#créer le répertoire pour les pages aspiréesmkdir pages-aspirees/usage$numREP ;#créer le rép. pour les fichers avec le texte dumpémkdir dump-text/usage$numREP;#créer le rép. pour les fichers avec le contextemkdir contextes/usage$numREP;# impression du l'entete du tableau:echo "<table border=\"1\"> <tr> <th>URL</th> <th>page aspirée</th> <th>texte dumpé</th> <th>contexte</th> </tr> <tr> <td colspan=\"4\"> répertoire : <b>usage$numREP</b> fichier source : <b>$file</b> </td> </tr>" >>documentation/$nf.html;########## DEBUT de la boucle emriquée : LECTURE DES URLS ######################for url in `cat $rep/$file` {#compteur pour le nombre URLSnumURL=$[$numURL + 1];#aspiration de l'URLwget --tries=1 -T 20 -o documentation/logfile.txt -O pages-aspirees/usage$numREP/asp$numURL.html $url;############### TEST DE WGETif grep "saved" documentation/logfile.txt############### SI SUCCESthen#dumper la pagelynx -dump $url >dump-text/usage$numREP/dump$numURL.txt#recherche du motif et filtrage du contexteegrep -v "^$" dump-text/usage$numREP/dump$numURL.txt| egrep -v "[\[|\]|/\\]" |egrep -v "http"|egrep -i -C 2 "barrage" >contextes/usage$numREP/cntx$numURL.txt echo "<tr> <td> <a href=\"$url\" target=\"_blank\" title=\"$url\"> url$numURL </a> </td> <td> <a href=\"../pages-aspirees/usage$numREP/asp$numURL.html\" target=\"_blank\"> asp$numURL.html </a> </td> <td> <a href=\"../dump-text/usage$numREP/dump$numURL.txt\" target=\"_blank\"> dump$numURL.txt </a> </td> <td> <a href=\"../contextes/usage$numREP/cntx$numURL.txt\" target=\"_blank\"> cntx$numURL.txt </a> </td> </tr>" >>documentation/$nf.html############### SI ERREURelse echo "<tr> <td> <a href=\"$url\" target=\"_blank\" title=\"$url\"> url$numURL </a> </td> <td colspan=\"3\"> echec de wget lien mort !!! </td> </tr>" >>documentation/$nf.html fi################### FIN de la boucle emriquée #################################} echo "</table><br/><br/>" >>documentation/$nf.html;###################### FIN de la boucle principale #############################} echo "</body></html>" >>documentation/$nf.html;#################### FIN DU CODE ###############################################