[bash] Création d'arborescence applicative
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:
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:
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