Bonjour,
Je travaille sur un petit script qui a la charge de vérifier la présence de dossiers dans un autre dossier.
Récemment j'ai voulu l'améliorer mais je bloque sur un test de chaine de caractères...
En gros, le dossier principal dans lequel est fait le test se nomme "Transit", et peut contenir deux types de dossiers :
- des dossiers nommés "ENVOI_DU_date"
- et des dossiers ayant pour nom "A_SUPPRIMER_date" (en cas de problèmes)
Actuellement, que ce soit l'un ou l'autre, les deux types de dossiers sont traités de la même manière, et j'ai voulu modifier ça justement de façon à supprimer tous les A_SUPPRIMER sans les traiter.
Voilà comment je procède :
Code :
- cd /TEMP/Transit
- LISTDOS=`find . -mindepth 1 -maxdepth 1 -type d 2>/dev/null`
- NB_DOS=`find . -mindepth 1 -maxdepth 1 -type d 2>/dev/null | wc -l`
- date +%d/%m/%Y/%R >>/usr/local/bin/Suivi_OVH/OVH.log
- if [ $NB_DOS -gt 0 ] #Si des dossiers sont présents
- then
- for DOS in $LISTDOS
- do
- if [ $DOS = "A_SUPPRIMER_000000" ] #c'est un dossier de test, les 000000 sont voulus pour que ce soit plus simple
- then
- for NB_DOS in $LISTDOS
- do
- echo "GRANDE Suppression du dossier $DOS" >>/usr/local/bin/Suivi_OVH/OVH.log
- rm -rf $DOS
- continue
- done
- #Le if se termine plus loin
|
Voilà ce que j'essaie de faire, par contre j'ai l'impression que le script ne passe pas là dedans :
Code :
- if [ $DOS = "A_SUPPRIMER_000000" ]
|
Et du coup pour l'instant il ne fait pas de différence entre les dossiers "normaux" et ceux du type A_SUPPRIMER.
Quelqu'un aurait-il une idée s'il vous plaît?
Je suis bloqué actuellement et j'ai fait plusieurs tests pas très concluants.
Peut-être que mes instructions ne sont pas tout à fait exactes?
J'apprécie toute aide !
Message édité par Adaron le 10-07-2009 à 12:02:50