Aller au contenu

Test sur dossier


Faust

Messages recommandés

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

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

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...