Bonjour,

je souhaite réaliser mon 1er batch sous Linux. J'ai un répertoire avec une centaine de répertoires. Je souhaite créer un TAR pour chacun des répertoires et supprimer le répertoire en question.

Ex :
* Rep1
* Rep 1-1
* Fichier 1-1-1
...
* Fichier 1-1-n
* Rep 1-2
* ....

* Rep2
* ....

Je souhaite à la fin avoir un fichier "Rep1.zip", un fichier "Rep2.zip", ... en lançant mon fichier Batch dans le répertoire parent de Rep1, Rep2, ...

J'espère que je suis clair.

Voici le code que je compte tester :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
#!/bin/bash
 
liste_files=`ls`
 
for Rep in $liste_files
do
    if [ -d $Rep ]
    then
        echo "Répertoire $Rep en cours de traitement"
        tar cf $Rep.tar" $Rep
        rm -Rf $Rep
    fi  
done
Avant de la lancer, j'aimerais que vous me disiez si ça à une chance de marcher et quelles "sécurités" je peux mettre pour éviter de perdre des données (si l'instruction TAR plante, est ce que le script va continuer et donc m'effacer des répertoires non archivés ?, ... )

Merci d'avance pour votre aide.