Le script final
#
SCRIPT FINAL
# Tai VU et Alain COURRIER
#!/bin/bash
#Nom
du dossier qui contient les
URLS
echo "Donnez le nom du dossier contenant les liens: ";
read dossier;
#Nom
du fichier de sortie
echo "Donnez le nom du fichier html où stocker ces
liens:
";
read table;
#Le
fichier sera un fichier html
et sera enregistré dans le répertoire "TABLEAUX".
tablo="./TABLEAUX/$table.html"
#Mot
recherché
echo "Donnez le motif à rechercher: ";
read motif;
#Première
balises HTML que
l'on insère dans notre fichier.
#Indications
sur le
tableau (couleur de la police, bordure)
echo
"<html><head><title>tableau
de
liens</title><style
type=\"text/css\">table,th,td {border:
1px solid #333333;text-align: center;} th,td{color:#333333} a
{color:#615E39}
</style></head><center><body>">
$tablo;
#Variable
qui indique le
numéro de la page
j=1;
#Pour
chaque sous dossiers
(FRANCAIS et ANGLAIS).
#Le
premier sous dossier
traité sera FRANCAIS.
for langue in `ls -r $dossier`
{
#Création
du titre du
tableau et de ces colonnes
echo "<table
cellspacing="0"><CAPTION><i><font
color=#FF0000>$langue</font><i></CAPTION><tr
BGCOLOR=#CCFFCC><th>"SENS"</th><th>"LIENS"</th><th>"PAGES
ASPIREES"</th><th>"DUMP"</th><th>"CONTEXTES"</th></tr>">>
$tablo;
#Pour
chaque fichier d'un sous
dossier
for senstxt in `ls $dossier/$langue`
{
#Compteur
qui indique le nombre de
lignes pour chaque sens (nombre de liens que contient chaque fichier)
c=0;
for ligne in `cat $dossier/$langue/$senstxt`
{
let "c=c+1";
}
#Variable
"senstxt" sans
l'extension ".txt"
sens=$(basename $senstxt .txt);
#La
largeur (verticale) d'une ligne de la
colonne "sens" dépend du nombre d'occurences pour ce sens.
echo "<tr><td rowspan=$c
BGCOLOR=#FFFF99><b>"$sens"<b></td>">>
$tablo;
#Compteur
utilisé pour
stocker les pages créées.
i=1;
#Pour
chaque lien
for ligne in `cat $dossier/$langue/$senstxt`;
{
#Aspiration
du site et
enregistrement dans le dossier "PAGES-ASPIREES"
wget -O ./PAGES-ASPIREES/$langue$sens$i.html $ligne;
#Dump
du texte et enregistrement
dans le dossier "DUMP-TEXT
lynx -dump -nolist $ligne > ./DUMP-TEXT/$langue$sens$i.txt;
#Filtrage
des lignes ou le mot
recherché apparait.Le pluriel du mot est pris en compte.
#Le
contexte est enregistré
dans le dossier "CONTEXTES"
egrep -i "\b"$motif"s*\b" ./DUMP-TEXT/$langue$sens$i.txt >
./CONTEXTES/$langue$sens$i.txt;
#Création
des cellules
clickables du tableaux qui permettent la visualisation de chaque page
créée
echo "<td><a href=\"$ligne\">lien
n°
$j</a></td><td><a
href=\"../PAGES-ASPIREES/$langue$sens$i.html\">page n°
$j</a></td><td><a
href=\"../DUMP-TEXT/$langue$sens$i.txt\">dump n°
$j</a></td><td><a
href=\"../CONTEXTES/$langue$sens$i.txt\">contexte n°
$j</a></td></tr>"
>> $tablo;
#Incrémentation
de "i" (i
revient à 1 quand la variable "senstxt" change de valeur)
let "i=i+1";
#Incrémentation
de "j"
let "j=j+1";
}
}
#2
sauts de ligne (pour que la
séparation entre les tableaux soit plus évidente)
echo "<br><br>">>$tablo;
}
#Dernières
balises HTML du
fichier
echo
"</table></center></body></html>"
>>
$tablo;