Bonjour à tous,
Je souhaiterais écrire un script qui se lancer toutes les semaine afin de créer une archive de divers répertoires.
Pour ce faire, j'ai 2 tables en BDD de paramétrage du script, qui convertit en shell donne ces 2 tableaux :
En gros le premier tableau récupère la liste des répertoires à zipper.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 FOLDERS=( "/usr/local/web" "/usr/local/Documents/NAS" "/usr/local/Documents/PI" "/usr/local/Restauration/Sauvegarde" ) EXCEPTED=( "/usr/local/web/download" "/usr/local/Restauration/Sauvegarde/NAS" "/usr/local/Restauration/Sauvegarde/PI" "/usr/local/Restauration/Sauvegarde/PC Bureau" )
Le deuxième la liste des sous répertoires à ne pas intégrer au zip global.
Je veux que mon zip global contienne 4 répertoires (en fonction du nombre de FOLDERS) comme ceci :
Du coup j'ai voulu essayer de générer la commande "à la volée" avec 7zip mais ça ne fonctionne pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 monzip.zip - web - ... - NAS - ... - PI - ... - Sauvegarde - ...
La solution la plus simple serait de copier/coller des répertoires et de zipper le contenu mais si les fichiers sont gros, ça va prendre + de temps et user les disques pour rien.
Voici le début du script..
ça ne marche pas car je pense que les variables ne sont pas bien interprétées...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 for FOLD in ${FOLDERS[*]} do FD="${FD} \"${FOLD}\"" done for EXCEPT in ${EXCEPTED[*]} do EX="${EX} -x\!\"${EXCEPT}\"" done 7z a t.7z `echo $FD` `echo $EX`
merci pour votre aide,
Partager