pluriTAL – BLOG Master pluriTAL [ParisX, ParisIII, INALCO]

séance 02.11.06_ML PED13

Posted in Projet 2006-2007 by pluritaluser on 2 novembre 2006

1- Un rapide coup d’oeil sur les bases en HTML

2- Quelques rappels sur les scripts bash

Intérêt des scripts : automatisation des traitements, i.e. de l’exécution des lignes de commandes qui constituent le script.

Il faut un fichier exécutable (le script) dans lequel est bien spécifié l’interpréteur par lequel le script peut être exécuté par la suite (1° ligne de script ‘#!/bin/bash‘).

 

Les chemins de type ‘cd f:

ne fonctionnent sous Cygwin que parce qu’on est sous une OSWindows, mais ça ne marcherait pas sous une OSLinux : il faudrait entrer la commande complète

cd /cygdrive/f

Si le chemin doit contenir des espaces, il faut les despécialiser afin qu’ils ne soient pas interprétés comme faisant partie de la ligne de commande dans l’invite de commande Cygwin

 

Dans l’invite de commande Cygwin, le ./‘ qui précède le nom de fichier que l’on veut lancer indique qu’on est dans le répertoire courant.

On aura simplement ‘./nomdufichieràlancer‘ si le fichier en question est dans le répertoire courant.

Mais si l’on est dans un autre répertoire, pour lancer l’exécution du fichier, il faut spécifier le chemin absolu, par exemple ‘./repertoire1/répertoirecourant/nomdufichieràlancer‘.

 

Dans un script shell, il n’y a pas de déclaration de variables.

Les double-quotes signifient que leur contenu est une chaîne de caractères, sauf s’il y a une variable dedans.

3- Commentaire détaillé du script bash mis à disposition par les enseignants

  • Il s’agit du script fait-tableau-v1 .

#!/bin/bash
# Cette première ligne indique au shell où il doit chercher l’interpréteur bash
# i.e. quel interpréteur de commandes de shell il doit chercher.
# ‘bash’ est une commande ayant la fonction d’interpréteur.
# Pour que les lignes de commandes du programmes soient ‘comprises’ par la machine,
# il faut spécifier l’interpréteur de commandes.
# On parle de ‘shell d’automatisation de tâches’.

echo « donne nom de fichier contenant les liens http »; #c’est la liste des pages wgettées
# cette ligne signifie que le programme exécute la commande ‘echo’, qui affiche un message
# le programme attend une donnée d’entrée de départ, qu’il faut indiquer dans la fenêtre de commandes
# à la suite de la commande ‘echo’
read fic; #le programme connait le fichier de liens sous le nom $fic
# cette commande associe la variable ‘fic’ à la valeur ‘adresse du fichier en entrée’
echo « donne nom de fichier html où stocker ces liens »; #c’est le tableau de liens à créer
read tablo; #enregistre nom donné par utilisateur dans la variable $tablo
echo « <html><head><title>tableau de liens</title></head><body><table border=1> » > $tablo; #code de début de tableau
# prend le contenu entre guillemets et l’insère en contenu de la variable ‘$tablo’

# la commande ‘for’ initie une boucle, i.e. un ensemble de commandes qu’on va répéter plusieurs fois
for nom in `cat $fic` #$nom est la variable dans laquelle sera stocké chaque lien
# les back-quotes qui entourent la commande ‘cat’ permettent de récupérer
# le contenu de l’exécution de cette commande,
# i.e. la récupération de l’affichage des lignes du fichier ‘$fic’;
# ce contenu récupéré est renvoyé vars la commande ‘for’ dont dépend la boucle
{
echo « <tr><td><a href=\ »$nom\ »>$nom</a></td></tr> » >> $tablo;
#création d’un tableau à une colonne et autant de lignes qu’il y a d’URL
}
echo « </table></body></html> » >> $tablo; #code de fin de tableau
#le fichier dont le nom correspond à la variable tablo est maintenant créé, ouvrez-le

Voilà pour aujourd’hui ^^

A bientôt!

Marguerite

Publicités

Laisser un commentaire

Choisissez une méthode de connexion pour poster votre commentaire:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s

%d blogueurs aiment cette page :