Bonjour à tout le monde


Pour les besoins d'installations applicatives, je dois creer des arborescences

Exemple pour une application multimedia avec une ihm en flask


└── Euterpe
├── conf
├── fontes
├── ihm
│** ├── static
│** └── templates
├── Logs
├── Musique
│** ├── MP3
│** ├── Playlists
│** └── Podcasts
└── temp


Pour ce faire, j'ai un fichier ini
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
[Repertoires]
# Les Repertoires et les Sous-repertoires ont un / a la fin
REP_INSTALL            = /Projets/Euterpe/
REP_BASE               = /Projets/Euterpe/
SOUS_REP_BASE_MUSIQUE       = Musique/
SOUS_REP_BASE_CONF          = conf/
SOUS_SOUS_REP_BASE_MUSIQUE_MP3           = MP3/
SOUS_SOUS_REP_BASE_MUSIQUE_PODCASTS      = Podcasts/
SOUS_SOUS_REP_BASE_MUSIQUE_PLAYLISTS     = Playlists/
SOUS_REP_BASE_IHM           = ihm/
SOUS_SOUS_REP_BASE_IHM_TEMPLATES = templates/
SOUS_SOUS_REP_BASE_IHM_STATIC    = static/
SOUS_REP_BASE_FONTES        = fontes/
SOUS_REP_BASE_IMAGES        = temp/
SOUS_REP_BASE_LOGS          = Logs/
et un bout de code
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
 
create_directories_recursive() {
    local base_variable=$1
    local base_dir="$2"
  mkdir -p "$base_dir"
    liste_dir=$(env | grep -E "^SOUS_$base_variable")
    #IFS="\n"    
    for ligne in "$liste_dir"; do
    for line in $liste_dir; do
            variable=$(echo "$line" | cut -d '=' -f1)
            sous_rep=$(echo "$line" | cut -d '=' -f2)
            #echo "Variable: $variable, Sous-répertoire: $sous_rep"
            create_directories_recursive $variable $base_dir$sous_rep
    done
 
    done
}
 
# Exemple d'utilisation
#REP_BASE="/Projets/ma-PGI/"
 
# Appel de la fonction pour créer les répertoires
create_directories_recursive "REP_BASE" "$REP_BASE"

Alors, ça fait le job, mais je ne trouve pas ça élégant

Vous auriez une autre manière de faire ?


D'avance merci
Olivier