Notre travail est basé sur quelques scripts, mais certains n'étaient utiles que pendant le travail.
Les scripts marchent à partir de quelques données en entrée et sont dépendants de la configuration de fichiers et données.
Voici l'arborescence obligatoire pour le script :
Le chemin absolu des fichiers du script se trouve dans le fichier rm_don.txt, qui est lui même répertorié dans le dossier PROGRAMMES, tous les scripts prennent la variable dossier dans ce fichier.
****************************************************************************
le nettoyeur | le script principal | le script général | le script pour concaténer | mode d'emploi
****************************************************************************
On nous a demandé de faire des nuages de mots. On a décidé de le faire avec l'outil donnant les résultats les plus agréables à voir, WORDLE.
En entrée, le programme demande du texte pour en faire des statistiques et dessiner les nuages.
On a automatisé le travail au maximum en concaténant le contenu des fichiers contextes dans un même fichier.
--------------------------------------------------------
#!/bin/bash
# fic=fichier contextes .txt
read chemin < rm_don.txt; #rep de travail
--------------------------------------------------------
on écrit un fichier contenant les numéros des sens (chez nous, il ressemble à:
1
2
3
4
5
6
7
pour chaque sens, une boucle fonctionne:
--------------------------------------------------------
for sens in `cat donneesCAT.txt`;
{ i=1
for fichier in `ls $chemin/CONTEXTES/FR/$sens`
--------------------------------------------------------
il lit tous les fichiers français du sens donné et en écrit à la suite les contextes dans un fichier txt. La ligne d'echo permet de voir combien de fichiers ont été concaténés.
--------------------------------------------------------
{
cat $chemin/CONTEXTES/FR/$sens/$i.txt >> $chemin/CONCATENATION/FR/sens$sens.txt; # concatène tous les fichiers francais de meme sens
#echo "******************************" >> $chemin/CONCATENATION/FR/sens$sens.txt;
let i+=1;
}
}
--------------------------------------------------------
information pour l'utilisateur: "ne t'inquiète pas, je travaille":)
et les mêmes boucles pour l'anglais.
--------------------------------------------------------
echo "patience...";
for sens in `cat donneesCAT.txt`; #liste des sens, entree manuellement
{
i=1
for fichier in `ls $chemin/CONTEXTES/EN/$sens`
{
cat $chemin/CONTEXTES/EN/$sens/$i.txt >> $chemin/CONCATENATION/EN/sens$sens.txt; # concatene tous les fichiers anglais de meme sens
#echo "******************************" >> $chemin/CONCATENATION/EN/sens$sens.txt;
let i+=1;
}
}
echo "encore un peu...";
for sens in `cat donneesCAT.txt`; #liste des sens, entree manuellement
--------------------------------------------------------
pour le polonais on n'a pas de fichiers texte mais des html, ce qui fait qu'on doit concaténer les fichiers html et les nettoyer en enlevant les balises et en-têtes avant de faire des nuages:
--------------------------------------------------------
{
t=1
for page in `ls $chemin/CONTEXTES/PL/$sens`
{
cat $chemin/CONTEXTES/PL/$sens/$t.html >> $chemin/CONCATENATION/PL/sens$sens.html; # concatene tous les fichiers polonais de meme sens
#echo "******************************" >> $chemin/CONCATENATION/PL/sens$sens.html;
let t+=1;
}
}
echo "fini";
--------------------------------------------------------
après, il faut donc ouvrir tous les fichiers en NOTEPAD++ (et seulement ces 7 fichiers) et faire le ménage dedans.
J'ai utilisé les expressions régulières et fonction "remplacer tout dans les fichiers ouverts".
--------------------------------------------------------