Utilisez find dans Terminal pour supprimer les répertoires et fichiers du même paramètre de recherche

16

Si je tape ce qui suit dans Terminal, cela supprimera tous les fichiers qui répondent au paramètre de recherche:

sudo find . -type f -name "*Xilisoft*" -exec rm -rf {} \;

Ensuite, si je recommence et que je le tape avec dau lieu de fcela, tous les répertoires seront supprimés

sudo find . -type d -name "*Xilisoft*" -exec rm -rf {} \;

Comment puis-je l'obtenir pour supprimer le type fet dd'un seul coup?

Danijel-James W
la source

Réponses:

23

Vous pouvez fournir plusieurs -typeoptions -o, comme -type f -o -type ddans une seule commande.

find . -name "*Xilisoft*" -type f -o -name "*Xilisoft*" -type d

-ocorrespond à tous les paramètres, donc le -nameest fourni deux fois dans la commande ci-dessus.
Notez que find peut supprimer les résultats en utilisant -deleteplutôt que -exec rm -rf {}.

grg
la source
3
Je ne connaissais pas cette -deleteoption, c'est donc une information bienvenue.
Danijel-James W