1. Lire les fichiers de paramètres contenant les URLs de chaque langue.
2. Créer chaque colonne des tableaux, y compris N (numéro de chaque fichier URL), URL (nom du URL avec lien), retourcurl, Pages Aspirées (avec lien), Encodage, Dump(encodage), Dump(utf-8), contexte, contexte HTML, Fréquence Motif, Index Dump, etc.
3. On entre dans le traitement « curl » (comme « wget » marche moins bien sur Ubuntu), pour aspirer le contenu de chaque page d’URL. On traite chacun des fichers d’URLs de ces trois langues par « curl ». Après avoir executé le traitement par « curl», on crée une variable « retourcurl », pour vérifier si « curl » a marché. On utilise la fonction « egrep » pour rechercher de message d’erreur comme "(404)? Bad request|forbidden page|Read Error|Moved Permanently|Not Acceptable|Access Denied|Object Moved|The document has moved" dans la page aspirée, si on trouve un message d'erreur , on va arrêter et afficher le message. Si le « retourcurl » est 0, cela signifie que « curl » a marché sans problème.
4. Ensuite, pour les URL où « curl » a réussi d’aspirer, on fait détection d’encodage par « file » : si l’encodage est déjà en utf-8, on fait « lynx » pour extraire le contenu textuel de chaque URL, ( Ici pour le chinois, on a ajouté une étape de segmentation en utilisant un script spécial en dehors du programme qui s’appelle « segchinois.pl », pour détecter les fichier chinois, comme on a déjà nommé le fichier chinois comme "url-ch.txt" , on utilise « filename=${fichier%%.*}» afin de trouver le nom du ficher sans extentions, ensuite ajoute une nouvelle condition « if [[ $filename == *-ch ]]» afin de vérifier si nom de fichier est fini par -ch, avant de lui appliquer le script de segmentation.) On applique également «egrep » pour détecter le motif et son contexte, ensuite le minigrepmultilingue.pl qui peut traiter la recherche de contexte du motif et mettre ses résultats dans fichier html. On obtient aussi 4 fichiers globaux à la fin : dump_global, index_dump_global, contexte_global, index_contexte_global.
5. Pour les URL qui ne sont pas encodés en utf-8, on vérifie si l’encodage est connu par « iconv ». Si oui, on extrait le contenu du page par « lynx » ; sinon, on va détecter le charset.
6. S’il y a un charset, on va l’extraire et ensuite le faire revérifier par « iconv », si iconv le reconnait, tant mieux, on « lynx » et on dump, sinon, on ne fait rien…