Généralités
Le script bash est formé de plusieurs procédures effectuant chacune un travail particulier. Certaines des procédures sont appelées depuis le programme principal (ou dans la "procédure principale") alors que certaines le sont depuis d'autres procédures, mais nous verrons cela en détail plus bas.
procédures
filecreator()
Filecreator est une procédure qui va récupérer le nom des fichiers d'urls et placer chaque fichier dans une cellule d'un tableau (tab_fic). Chaque cellule du tableau contient alors un fichier d'urls.Ensuite, la procédure demande à l'utilisateur de donner un nom de fichier output qui sera directement placé dans le sous répertoire ./tabs/nom_de_fichier.
nota
: on demande confirmation à chaque étape de
manière à pouvoir réctifier le nom du
fichier si
besoin.
tabheader()
Cette procédure va créer dans le fichier de sortie l'en-tête du tableau html que nous devons produire.tabclosure()
Comme son nom l'indique, cette procédure va fermer le tableau html du fichier de sortie quand toutes les informations y auront été écrites.newcontext()
On crée un ligne et on place le contexte dans la première cellule.newhttp()
Crée un tableau dans la deuxième cellule de la ligne créer dans newcontext() Cette cellule correspond aux urls du français. Ce nouveau tableau contient dans chaque cellule un lien vers une page web.newtabwget()
Wgette les urls pour les sauver sur le disque dans le sous-dossiers : ./pages_locales/Crée ensuite dans la cellule suivante (dans la ligne de newcontext) un tableau contenant les liens vers les pages wgetées.
newtabdump()
Transforme les pages locales en pages de texte dans le sous-dossier : ./dumps/Puis, la procédure crée le tableau contenant les liens vers les pages dumpées. Tableau qui sera placé dans la cellule suivant celle des pages wgetées
suivant()
Cette procédure appelle newtabwget puis newtabdump.newen()
Cette procédure appelle suivant et crée une cellule libre dans laquelle ira se placer le tableau des pages egrepées.procédure principale
Elle constitue le coeur du programme.On initialise les compteurs d'urls
Appeler la procédure "filecreator"
Appeler la procédure "tabheader"
Pour chaque sens (donc chaque fichier compilant des urls) :
traiter le fichier ligne par ligne.
On va regarder les 4 premiers
caractères de la ligne .
si la ligne commence par :
"FR"
On initialise
le compteur à 1. Les urls seront
numéroté à
partir
de 1.
"EN"
On appelle la procédure
"newen"
"http"
On appelle la
procédure "newhttp" qui va créer le tableau de
liens d'urls.
"Une chaîne de
caractères quelconque (aucun des cas
précédents)"
alors appeler la procédure
"newcontext"
Une
fois toutes les lignes traitées, on a donc
créé
tous les tableaux du français et le tableau d'urls de
l'anglais.
Il faut maintenant créer les autres tableaux de l'anglais,
ce
que l'on fait en appelant la procédure "suivant".cela effectué, il ne reste qu'à créer une cellule vide pour la ligne de contexte (censément) créée par egrep et à fermer la ligne.
On passe ensuite au fichier (sens) suivant et on recommence jusqu'au dernier fichier. Puis, on ferme le tableau et le fichier de sortie..