Master 1 Plurital 2012
November 5 2012
Premier script:
La création d’un tableau en HTML qui contient les urls des sites que nous avons trouvés. Il est possible de changer le formatage du tableau en ajoutant des attributs et des valeurs à l’intérieur des balises : Pour faire une "jolie"!! table comme celle-ci :
Automatisation du processus: Au lieu d’écrire le fichier html nous-mêmes (écrivant individuellement chaque colonne et chaque ligne), nous allons créer un programme bash pour afficher automatiquement le tableau dans un fichier html. Le fichier contenant les urls servira de source pour notre tableau (ligne par ligne). Le chemin de ce fichier sera stocké dans la variable "fichier" (lignes 4-5) et le chemin de l’endroit de notre tableau dans la variable "tableau" (lignes 7-8). Ceux-ci seront entrées par l’utilisateur. Puisque nos urls sont organisés une par ligne, le programme peut accéder à chaque url l’un après l’autre. Chaque tour de la boucle affichera une nouvelle ligne (le numéro du lien et l’url). Nous utiliserons un compteur pour incrémenter la valeur du numéro du lien chaque fois (ligne 16). Il ne faut pas oublier de fermer le tableau après que les liens seront récupérés et de fermer les autres balises ouvertes. De plus, il faut faire attention en redirigeant le flux de sortie vers le fichier pour ne pas écraser son contenu chaque fois. Ainsi, la première redirection utilise un seul chevron, et les suivantes deux chevrons pour concaténer le texte au lieu de le remplacer. Il faut faire attention aussi en utilisant certains caractères comme les guillemets (qui se confondent avec les guillemets reconnus par le système). Pour les afficher, il faut les déspécialiser en les préfixant avec le symbole antislash "\". Remarque : En exécutant mon script (sh tablemaker.sh) j’ai rencontré un problème : la commande "let" n’a pas été pas reconnue. Pour éviter ce problème, j’ai utilisé la commande bash pour exécuter le script. Le résultat est un tableau qui contient autant d’urls qu’existent dans mon fichier d’urls, précédées du numéro du lien. Pour ajouter un lien hypertexte à chaque lien, il suffit d’entourer le lien des balises suivantes : < a href="http://www.website.com">Name of Link\< /a>
while read link
do
echo “$i< a href="\”$link\”">$link >>$tableau;
done < $fichier;
Plusieurs tableaux: Pour créer plusieurs tableaux dans le fichier, il faut utiliser une autre boucle qui lit le résultat de la liste de fichiers dans le dossier tant qu’il y a de noms de fichiers à lire. Au début il faut donner en entrée non pas un fichier contenant les urls mais le dossier qui contient les fichiers contenant les urls. ls dossierurl = liste de fichiers dans le dossierurl N.B: J’ai remarqué que mon script produisait plus de tableaux que je voulais (des duplicatas de tableaux). Par défaut, les fichiers que j’ai crées par gedit avaient été copiés dans un fichier de sauvegarde. Donc, quand j'ai regardé le contenu de mon dossier urls, j'ai trouvé :
Urls.txt Urls2.txt Urls2.txt~
Il faut bien vérifier qu’il n’existe pas de copies de sauvegarde pour ne pas afficher de multiples tableaux. Le script sera modifié ainsi :
Avec le méthode décrit dans le script ci-dessus, nous avons eu des problèmes de syntaxe selon les machines. Le script est alors en cours de vérification pour voir s'il est bien possible de faire une boucle while qui lit la liste produite par ls ./$dos
Autre méthode pour créer plusieurs tableaux: