[IMP] Amélioration de la recherche de fichiers contenant des éléments

- recherche plus fine sur le dossier contenant les catégories
- recherche sur une extension d'un type donné
- recherche seulement sur les fichiers
This commit is contained in:
Olivier DOSSMANN 2011-03-05 10:12:57 +01:00
parent d2078eca2a
commit a0ea50f5a3
3 changed files with 12 additions and 10 deletions

3
TACHES
View File

@ -29,6 +29,8 @@ DESTDIR
- changer les VAR= en VAR:= - changer les VAR= en VAR:=
- parcours_categ : normer les variables pour avoir categ_titre et element_titre plutôt que titre_categ et element_titre… - parcours_categ : normer les variables pour avoir categ_titre et element_titre plutôt que titre_categ et element_titre…
- Vérifier la présence des /, [ et ] dans les variables avant qu'elles soient mises dans un SED. Ceci à l'aide de ${var//a/b} pour modifier les chaînes A par B dans VAR. - Vérifier la présence des /, [ et ] dans les variables avant qu'elles soient mises dans un SED. Ceci à l'aide de ${var//a/b} pour modifier les chaînes A par B dans VAR.
- ajouter une licence comme LPRAB
- ajouter des fichiers images au bon format et sous licence libre
FAITES : FAITES :
--------- ---------
@ -57,3 +59,4 @@ le cas
- permettre l'ajout d'un texte d'introduction au début de la page - permettre l'ajout d'un texte d'introduction au début de la page
- changer les variables contenues dans les fichiers HTML par @@NOM_VARIABLE@@ - changer les variables contenues dans les fichiers HTML par @@NOM_VARIABLE@@
- ajout de l'adresse URL du dépôt GIT dans le pied de page (soulier) du portail : Généré par <a href="http://git.dossmann.net/scripts/porteail.git/" title="Se rendre sur le dépôt source du projet PorteAil">PorteAil</a> - ajout de l'adresse URL du dépôt GIT dans le pied de page (soulier) du portail : Généré par <a href="http://git.dossmann.net/scripts/porteail.git/" title="Se rendre sur le dépôt source du projet PorteAil">PorteAil</a>
- amélioration de la recherche des fichiers dans le dossier catégorie, avec choix d'une extension

View File

@ -19,6 +19,7 @@ dossier_composants="./composants"
deb_categ="${dossier_composants}/categ_deb.html" deb_categ="${dossier_composants}/categ_deb.html"
fin_categ="${dossier_composants}/categ_fin.html" fin_categ="${dossier_composants}/categ_fin.html"
elem="${dossier_composants}/element.html" elem="${dossier_composants}/element.html"
extension="txt" # Extension des fichiers à prendre en compte
## FONCTIONS ## FONCTIONS
debug() { debug() {
@ -42,8 +43,6 @@ then
fi fi
## DEBUT ## DEBUT
#TODO: n'afficher que les fichiers dont l'extension est .txt (ou .ail?)
#+ À l'aide de find par exemple.
#TODO: Prendre en compte plusieurs paramètres pour : #TODO: Prendre en compte plusieurs paramètres pour :
# - connaître le dossier contenant les fichiers de catégorie # - connaître le dossier contenant les fichiers de catégorie
# - l'extension des fichiers contenant les catégories # - l'extension des fichiers contenant les catégories
@ -53,7 +52,7 @@ fi
#TODO: Faire des tests sur les paramètres avant lancement du programme #TODO: Faire des tests sur les paramètres avant lancement du programme
# Parcours du dossier # Parcours du dossier
for fichier in `ls $dossier` for fichier in `find categ/ -iname "*.${extension}" -print -type f`
do do
# On met/remet la valeur de CATEG à 0 significative de l'absence # On met/remet la valeur de CATEG à 0 significative de l'absence
#+ d'une Catégorie #+ d'une Catégorie
@ -67,28 +66,28 @@ do
elements_image_desc=() elements_image_desc=()
curseur_element=0 curseur_element=0
# Calcul du nombre de ligne du fichier # Calcul du nombre de ligne du fichier
nbre_lignes=`cat ${dossier}/${fichier} |wc -l` nbre_lignes=`cat ${fichier} |wc -l`
# debug # debug
debug "$fichier: $nbre_lignes" debug "$fichier: $nbre_lignes"
# Vérification du nombre de lignes retourné # Vérification du nombre de lignes retourné
if [[ $nbre_lignes -gt 0 ]] if [[ $nbre_lignes -gt 0 ]]
then then
# Récupération du nom de la catégorie # Récupération du nom de la catégorie
nbre_categories=`grep -E "^\[\[.*\]\].*$" ${dossier}/${fichier} |wc -l` nbre_categories=`grep -E "^\[\[.*\]\].*$" ${fichier} |wc -l`
# Si le nombre de catégorie est égal à 1, on a tout bon # Si le nombre de catégorie est égal à 1, on a tout bon
if [[ $nbre_categories -eq 0 ]] if [[ $nbre_categories -eq 0 ]]
then then
echo "Fichier '${dossier}/${fichier}' mal renseigné : Pas de nom de catégorie" echo "Fichier '${fichier}' mal renseigné : Pas de nom de catégorie"
continue continue
elif [[ $nbre_categories -gt 1 ]] elif [[ $nbre_categories -gt 1 ]]
then then
echo "Fichier '${dossier}/${fichier}' mal renseigné : Trop de catégorie présentes." echo "Fichier '${fichier}' mal renseigné : Trop de catégorie présentes."
continue continue
else else
echo "Fichier '${dossier}/${fichier}' correct : Catégorie présente." echo "Fichier '${fichier}' correct : Catégorie présente."
fi fi
# le fichier contient plusieurs lignes, on lit le contenu # le fichier contient plusieurs lignes, on lit le contenu
for ligne in $(cat ${dossier}/${fichier}) for ligne in $(cat ${fichier})
do do
debug "Contenu ligne : $ligne" debug "Contenu ligne : $ligne"
# Vérifie les différents cas possibles : # Vérifie les différents cas possibles :
@ -141,7 +140,7 @@ do
done done
else else
# le fichier ne contient pas de ligne. message d'erreur # le fichier ne contient pas de ligne. message d'erreur
echo -e "Fichier '${dossier}/$fichier' non pris en charge : Le fichier semble vide." echo -e "Fichier '$fichier' non pris en charge : Le fichier semble vide."
fi fi
# On débute la création du fichier contenant la catégorie si CATEG=1 # On débute la création du fichier contenant la catégorie si CATEG=1
if [[ $CATEG == 1 ]] if [[ $CATEG == 1 ]]