[shell] Supprimer fichiers avec conditions

Résolu
hiiimoo Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
 hiiimoo -
Bonjour,

bon j'ai besoin de réaliser un scripte qui me permet la suppression de fichier avec les extensions ".o" et ".exe" , cette suppression doit être faite a trois niveau de profondeur du répertoire passé en paramètre !

voila ce que j'ai pu faire comme essai , et j'arrive pas a percevoir ou est le problème !

for i in ls `find $1 -maxdepth 3 -name "*.c" -o -name "*.exe"`
do
rm $i
done


je vous serai vraiment tre reconnaissant si vous m'aideriez a détecter l'erreur et merci finalement !
Cordialement ,
A voir également:

4 réponses

jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Salut,

Pas besoin de boucle "for", un simple :

find "$1" -maxdepth 3 -type f  -name "*.o" -o -name "*.exe" -exec rm -vf {} \;

Suffit amplement...
2
hiiimoo
 
enfaite j'ai ressui a faire marcher le mien en éliminant le "ls" ; le votre marche aussi mais juste sur les fichier " .exe" , merci de toute façon !
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Oups, j'ai oublié les parenthèses ;-((

\( -name "*.o" -o -name "*.exe" \)

Devrait aller beaucoup mieux ;-))
0
hiiimoo
 
beacoup mieu ! merci beaucoup l'ami !
PS: puis-je avoir du support d'avantage svp ! je laisse mon mail , et merci !
0
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 896
 
Pas besoin de mail (de plus c'est proscrit ici, l'aide étant universelle et non personnelle).
Pose tes questions et tu auras sûrement des réponses...
0
hiiimoo
 
okey ! ;)
0