Bonjour,

Je souhaite faire un script de sauvegarde, d'une arborescence:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
Dir
+-- subdir1
+-- subdir2
+-- subdir3
Les 3 subdir sont connus et figés. Je souhaite sauvegarder leur contenu dans l'équivalent de l'arborescence sur un NAS.

J'ai donc un code de ce type:
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
 
LOG=/mon/log
DIR=/mon/chemin/dacces/a/Dir
for f in `ls $DIR`
do
	if [ -d "$DIR/$f" ]; then
		NBFILES=`find $DIR/$f -type f | wc -l`
		echo "Copie de $DIR/$f..." >> $LOG
 
		cp -r $DIR/$f/* /mnt/nas/$DIR/$f/
 
		if [ $? -eq 0 ]; then
			echo "[ OK ]: $NBFILES fichiers" >> $LOG
		else
			echo "[FAIL]: CP command fail" >> $LOG
		fi
	fi
done
Ce code fonctionne très bien, mais dans mon log, une erreur apparait: "Aucun fichier ou répertoire de ce type" quand un des répertoires "subdir" est vide.

Comment puis-je palier à cette erreur? Y a-t-il une option à ajouter à cp pour qu'il ignore les vides?

Merci d'avance.