Faust Posté(e) le 9 février 2004 Partager Posté(e) le 9 février 2004 Je m'améliore un petit petit peu... bon, ce script fonctionne bien (enfin, je crois). Par contre, je n'arrive pas à trouver la fin ... j'ai essayer de faire des test mais ca ne marche pas...quelqu'un aurait une idée? #!/bin/bash echo "Quel dossier voulez vous nettoyer?" read folder if [ ! -d $folder ]; then echo "Ce dossier n'existe pas" else for file in $folder/*; do exist=${file##*/} if [ -f $exist ]; then cat $file >> $exist else cp $folder/* $folder/.. fi done ------------------------------------------------------------ if [ est ce que $folder contient des sous-dossiers? ] if oui echo "On ne peut effacer le dossier $folder" else rm -rf $folder Lien vers le commentaire Partager sur d’autres sites More sharing options...
Faust Posté(e) le 9 février 2004 Auteur Partager Posté(e) le 9 février 2004 presque... le problème est que si il y a un sous-dossier, il arrête comme prévu et ne l'efface pas, mais si le dossier parent contient un sous-dossier ET des fichiers, il copie les fichiers dans le répertoire parent et EFFACE le dossier (il faudrait seulement qu'il copie et n'efface pas le sous-dossier #!/bin/bash echo "Quel dossier voulez vous nettoyer?" read folder if [ ! -d $folder ]; then echo "Ce dossier n'existe pas" else for file in $folder/*; do exist=${file##*/} if [ -f $exist ]; then cat $file >> $exist else cp $folder/* $folder/.. fi done fi for subfold in $folder/*; do if [ ! -f $subfold ] || [ -d $subfold ]; then echo "DOSSIER CONTENANT DES SOUS-DOSSIERS" else rm -rf $folder fi done Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.