Bonjour à tous, je souhaite réaliser un script qui parcourt toute mon arborescence et qui supprime tout les fichiers cachés (ex : ".git") sauf certains (ex : ".@__thumb").
J'ai fais un script qui parcourt mon arborescence et qui supprime tout mes fichiers commençant par un ".".
Le voici :
J'ai voulu ensuite l'adapter et ajouter une condition pour que lorsque mon dossier/fichier s'appelle ".@__thumb" par exemple (qui est un dossier que je ne veux pas supprimer) il ne supprime pas le ".". J'ai obtenu ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 find . -depth -type d -name '.*' | while read f do dn=`dirname "$f"` bn=`basename "$f"` mv "$dn/$bn" "$dn/${bn//.}" done
Cependant, ma condition semble ne servir à rien. Mon script supprime quand même mon dossier ".@__thumb". Auriez-vous une idée d'où pourrait venir le problème ou une idée d'amélioration ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 thumb=".@__thumb" echo $thumb find . -depth -type d -name '.*' | while read f do if [[ $bn != $thumb ]] then dn=`dirname "$f"` bn=`basename "$f"` mv "$dn/$bn" "$dn/${bn//.}" fi done
Je ne sais pas si j'ai été clair dans mon explication. Si vous avez des questions, n'hésitez pas.
En vous remerciant.
Partager