vendredi 12 novembre 2010

probleme de codage

bonsoir,
nous avons réussi afficher les 3 colonnes supplémentaires durant cette séance mais nous trouvons que le résultat pour les codages sont mauvaises surtout pour utf-8 qui n'affiche rien. Est ce normal? Quelqu'un est il dans la même situation que nous ou  quelqu'un a-t-il réussi avoir un bon résultat pour l'affichage de ces colonnes?

Merci de nous répondre.

mercredi 10 novembre 2010

problèmes de la commande "if"

Voici un script qui marche:

#!/bin/bash
echo "Donnez le nom du dossier contenant les fichiers avec les liens http: ";
read dossier;
echo "Donnez le nom du fichier pour enregistrer le tableau des liens: ";
read tabl;
echo "<html><head><title>Tableau de liens http</title></head><body><table border=\"1\"><tr><td>sens</td><td></td><td>adresse web</td></tr>" > $tabl;
n=1;
for fichier in `ls $dossier`
do
echo "fichier = $fichier";
theme=`echo $fichier | cut -d_ -f1`;
echo "theme = $theme";
if [ $theme = "b" ]; then
sens="botanique";
elif [ $theme = "c" ]; then
sens="couture";
elif [ $theme = "m" ]; then
sens="médical";
elif [ $theme = "e" ]; then
sens="électrique";
fi
echo "sens = $sens";
for lien in `cat $dossier/$fichier`
do
echo "<tr><td>$sens</td><td>$n</td><td><A href=\"$lien\">$lien</A></td></tr>" >> $tabl;
n=`expr $n + 1`;
done
done
exit;


Ce script prend le nom du dossier qui contient des fichiers des URLs. Les noms de ces fichiers sont significatifs. La première lettre du nom du fichier indique le sens du mot dans ses URLs. (Le fichier  b_en_txt.txt contient des liens vers des pages dont le sens du mot "bouton" est "botanique".)
Nous voulons faire un tableau html de liens, qui indique le sens du mot pour chaque lien. Donc, dans le tableau, il y aura 3 colonnes: sens, numéro du lien, lien.

D'abord, nous séparons la première lettre du nom du fichier et placeons sa valeur dans la variable "theme":

for fichier in `ls $dossier`
do
echo "fichier = $fichier";
theme=`echo $fichier | cut -d_ -f1`;
echo "theme = $theme";

La commande "cut" retourne le premier élément du nom de fichier, séparé du reste par l'underscore: b_en_txt.txt
Après l'exécution de cette commande, la variable "theme" contient la valeur "b", ou "c", ou "m", ou "e".

Ensuite, en fonction de la valeur de la variable "theme", nous attribuons un sens à la variable "sens", que nous mettrons ensuite dans le tableau html. Nous le faisons à l'aide de la commande "if".

En écrivant cette commande dans notre script, nous avons rencontré des problèmes, que Mr Belmouhoub nous a aidé à résoudre.La commande "if then" ne marchait pas. Après plusieurs essais, Mr Belmouhoub a compris que sous cygwin, il fallait absolument:

1 mettre un point-virgule après le crochet de test: ];

2 mettre des espaces dans le test:
après le crochet ouvrant et avant le crochet fermant: [espace...espace]
avant et après le signe d'égalité: espace=espace

3 mettre des quillemets autour du sens de la variable "theme" dans le test: "b"

4 ne pas mettre de guillemets autour de la variable "$theme" dans le test: $theme

Bon courage dans l'utlisation de la commande "if"!

lundi 25 octobre 2010

commandes pour le tableau suite

#!/bin/bash

#il affiche dans la console : Donnez le nom du fichier contenant les liens http :
echo "Donnez le nom du fichier contenant les liens http : ";
#L'utilisateur va rentrer un nom de chemin qui sera stocker dans 'fic'.
#Dans le chemin on donne le nom d'un fichier qui contient toutes les urls
#ce fichier a comme extention txt
read fic;

#il affiche dans la console : Donnez le nom du fichier html où stocker ces liens :
echo "Donnez le nom du fichier html où stocker ces liens : ";
#L'utilisateur va rentrer un nom de chemin qui sera stocker dans 'tablo'
#Dans le chemin, on crée un fichier avec un format html
read tablo;

#On commence à créer le tableau html
#Pour créer un page html, il faut entrer 4 types de balises : html, head, title, et body
#Dans le corps, il y aura le tableau html. Ce tableau a une bordure noire et solide de valeaur 1.
echo "<html><head><title>tableau de liens</title></head><body><table \"border=1px solid black\">" > $tablo;
#Dans la première ligne du tableau, on affiche les titres des colonnes qui seront "Nombre de liens" et "Les urls"
# La balise <tr> renvoie à la création d'une ligne. Notez bien qu'on rajoute une option à cette balise. En effet, on colore en orange l'arrière de la case. Cette option s'écrit: bgcolor=\"FFCC00\"
# La balise <th> signifie première colonne du tableau. Le titre est: Nombre de liens. Le titre est centré, coloré et il est en gras. On a donc utiliser 3 balises pour faire ceci. La balise <center> sert à centrer le titre. La balise <font> avec l'option color a permis de colorer le titre (cette balise s'écrit intégralement: <font color=\"FF6600\">) Et enfin la balise <b> a permis de mettre en gras le titre>
# On a fait le même processus pour la deuxième colonne du tableau qui est "Les urls"
# N'oubliez pas qu'on a une balise ouvrante et une balise fermante en html. Voici un exemple de balise ouvrante: <b> et de balise fermante: </b>. Entre les deux balises, on écrit n'importe quoi pour donner un contenu dans cette balise.
# Avec la commande echo, on affiche cette ligne dans la variable "tablo" qui représente un fichier de sortie en html
echo "<tr bgcolor=\"FFCC00\"><th><center><font color=\"FF6600\"><b>Nombre de liens : </b></font></center></th><th><center><font color=\"FF6600\"><b>Les urls : </b></font></center></th></tr>" >> $tablo;




#on crée un compteur pour compter le nombre d'url. Il est initialisé à 0.
c=0;

#$fic est une variable qui contient le nom du fichier des urls
#La commande cat affiche le contenu d'un fichier, donc on fait un cat dans $fic
#Les anticotes exécute la commande cat et renvoie le résultat dans une variable qui est ici nom
#Avec la boucle for on traite tous les éléments d'un ensemble, un par un.
#La boucle va se réaliser tant qu'on a des lignes d'url dans ce fichier
#La valeur du $nom change alors à chaque fois
#Pour chaque ligne dans le fichier url, écris les lignes de la commande echo en-dessous
#On a donc la création de la ligne en sortie html et on a la concaténation dans le tableau
for nom in `cat $fic`
{

#on utilise la commande let pour incrémenter le compteur
let "c=c+1";

#La commande echo affiche les caractères dans la variable $tablo qui est un fichier html
#Ici on a deux colonnes.
#Dans la première colonne, on le nombre urls que contient le fichier
#Dans la deuxième colonne on les liens d'urls qui pointe vers un site
# La balise <tr> renvoie à la ligne, et la balise <td> renvoie à la colonne
# La variable "$c" renvoie au compteur et la variable "$nom" renvoie à l'url d'un fichier.
#Notez bien que cette balise est utiliser pour créer un lien vers une page d'internet: <a HREF="#">Cliquez ici pour accéder à la page web </a>. Le dièze indique ici qu'il faut mettre une adresse url pour aller vers une page web. On peut remplacer le dièze par l'url: http://www.google.fr/ s'il l'on souhaite accéder à cette page web, par exemple.
echo "<tr bgcolor=\"#FFFFCC\"><td><center><font color=\"CC9966\">"$c"</font></center></td><td><center><u><a HREF="$nom">page n&deg; : "$c"</a></center></u></td></tr>" >> $tablo;

}

#on sort de la boucle.
#on affiche la ligne echo dans la sortie du fichier html.
#cette ligne permet de fermer le tableau et le code html
echo "</table></body></html>" >> $tablo;

commandes pour le tableau

#!/bin/bash


#il affiche dans la console : Donnez le nom du repertoire contenant les fichiers urls svp :
echo "Donnez le nom du repertoire contenant les fichiers urls svp :"; #L'utilisateur va rentrer un nom de chemin qui sera stocker dans 'dossier'.
#Dans le chemin on donne le nom du répertoire contenant tous les fichiers d'urls
read dossier;

#il affiche dans la console : Donnez le nom du fichier html où stocker ces liens :
echo "Donnez le nom du fichier html où stocker ces liens : ";
#L'utilisateur va rentrer un nom de chemin qui sera stocker dans 'tablo'
#Dans le chemin, on crée un fichier avec un format html
read tablo;



#On commence à créer le tableau html
echo "<html><head><title>tableau de liens</title></head><body><table \"border=1px solid black\">" > $tablo;
#Dans la première ligne du tableau, on affiche les titres des colonnes qui seront "Nombre de liens" et "Les urls"
# La balise <tr> renvoie à la création d'une ligne. Notez bien qu'on rajoute une option à cette balise. En effet, on colore en orange l'arrière de la case. Cette option s'écrit: bgcolor=\"FFCC00\"
# La balise <th> signifie première colonne du tableau. Le titre est: Nombre de liens. Le titre est centré, coloré et il est en gras. On a donc utiliser 3 balises pour faire ceci. La balise <center> sert à centrer le titre. La balise <font> avec l'option color a permis de colorer le titre (cette balise s'écrit intégralement: <font color=\"FF6600\">) Et enfin la balise <b> a permis de mettre en gras le titre>
# On a fait le même processus pour la deuxième colonne du tableau qui est "Les urls"
# N'oubliez pas qu'on a une balise ouvrante et une balise fermante en html. Voici un exemple de balise ouvrante: <b> et de balise fermante: </b>. Entre les deux balises, on écrit n'importe quoi pour donner un contenu dans cette balise.
# Avec la commande echo, on affiche cette ligne dans la variable "tablo" qui représente un fichier de sortie en html
echo "<tr bgcolor=\"FFCC00\"><th><center><font color=\"FF6600\"><b>Nombre de liens : </b></font></center></th><th><center><font color=\"FF6600\"><b>Les urls : </b></font></center></th></tr>" >> $tablo;


#on crée un compteur pour compter le nombre d'url. Il est initialisé à 0.
c=0;

# La commande ls sert à afficher le contenu d'un répertoire. Le nom du répertoire est stocké dans une variable nommée $dossier
#Les anticotes exécute une commande ls et renvoie le résultat dans une variable qui est ici fichier
#Pour chaque fichier dans le répertoire, fais...
for fichier in `ls $dossier`
{
#$fichier est une variable qui contient le nom de chaque fichier du répertoire.
#$dossier est une variable qui contient le nom du répertoire où contient les fichiers d'urls.
#La commande cat affiche le contenu de chaque fichier.
#Les anticotes exécute la commande cat et renvoie le résultat dans une variable qui est ici nom
#Pour chaque ligne dans chaque fichier url, écris les lignes de la commande echo en-dessous
#On a donc la création de la ligne en sortie html et on a la concaténation dans le tableau
for nom in `cat $dossier/$fichier`
{
#La commande let permet d'incrémenter le compteur
let "c=c+1";
#La commande echo affiche les caractères dans la variable $tablo qui est un fichier en sortie html
#Ici on a deux colonnes.
#Dans la première colonne, on le nombre urls que contient le fichier
#Dans la deuxième colonne on les liens d'urls qui pointe vers un site
#La balise <tr> renvoie à la ligne, et la balise <td> renvoie à la colonne
#La variable "$c" renvoie au compteur et la variable "$nom" renvoie à l'url d'un fichier.
#Notez bien que cette balise permet de créer un lien qui pointe vers une page web: <a HREF="#">Cliquez ici pour accéder à la page web </a>. Le dièze indique ici qu'il faut mettre une adresse url pour aller vers une page web. On peut remplacer le dièze par l'url: http://www.google.fr/ s'il l'on souhaite accéder à cette page web, par exemple.
echo "<tr bgcolor=\"#FFFFCC\"><td><center><font color=\"CC9966\">"$c"</font></center></td><td><center><u><A HREF="$nom">page n&deg; : "$c"</A></center></u></td></tr>" >> $tablo;
#On ferme la première boucle.
}
#On ferme la deuxième boucle.
}


#on affiche la ligne echo dans la sortie du fichier html.
#cette ligne permet de fermer le tableau et le code html
echo "</table></body></html>" >> $tablo;

lundi 11 octobre 2010

voci quelques commandes unix

 La commande PWD :
 affiche le chemin du répertoire courant (idem que la commande ECHO (espace)$PWD)


 La commande LS:
 liste les fichiers et les dossiers




La commande WHICH :
affiche le chemin absolu pour trouver une commande



 La commande ECHO :
affiche une chaîne de caractères passée en paramètre sur le terminal


 La commande MKDIR :
crée un nouveau répertoire

on peut aussi évoquer  les commandes

SCRIPT
permet d'écrire un script

CD (espace) nom du répertoire
permet d'entrer dans le répertoire recherché, exemple cd toto

la commande CD (espace)../..
remonte dans les répertoires précédents (chemin relatif)

la commande CD (espace)..
remonte d'un cran dans la hiérarchie des répertoires (chemin relatif)

la commande CD (espace)/
chemin abolu pour passer d'un répertoire à l'autre
exemple cd /home/m1  se positionne dans le répertoire home/m1

la commande CP (espace)- -HELP
indique les arguments obligatoire pour les options

la commande \
enlève au caractère toute sémantique spéciale (séparateur d'argument)
exemple mkdir toto\ titi crée le répertoire toto titi

la commande man (espace) cp
affiche la description de cp dans le manuel

vendredi 8 octobre 2010

bonjour, notre recherche d'URL est terminée. nous vous envoyons les documents en .zip par mail (langue source et langues cibles).

le groupe

vendredi 1 octobre 2010

mot choisi

bonjour,

nous avons choisi le mot qui sera bouton avec 4 sens: botanique, médical, couture, électricité.
les langues d'études seront le français, l'anglais, l'espagnol, l'arabe et le russe.

pourriez vous s 'il vous plaît, nous donner votre avis concernant le mot choisi. merci.

si le mot vous semble correct, nous commencerons de suite la recherche des URL.

cordialement,
nadia, latéfa, séverine.