Commande FIND avec plusieurs extensions

Résolu/Fermé
Burnotyo - 7 févr. 2012 à 19:26
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 - 7 févr. 2012 à 22:27
Bonjour,

Sur un serveur linux (ubuntu 8.04 de mémoire), je cherche à localiser dans /home l'ensemble des fichiers de type RAR, ZIP, 7Z, EXE, BAT et VBS, le tout en une seule passe. Et, tant qu'à y être, sauver ça dans un fichier resultat.txt


J'ai essayé avec la commande find, mais je n'y arrive qu'avec une seule extension à la fois (et la recherche est assez longue). J'aimerais éviter de faire à chaque fois 6 passes...


Pouvez-vous me proposer un exemple ?

Burnotyo

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
7 févr. 2012 à 19:31
Salut,

find /home -type f \( -name '*.rar' -o -name "*.zip" -o -name '*.7z' -name '*.exe' -o -name '*.bat' -o -name '*.vbs' \) -print

3
Merci beaucoup !
Je suis quasi-persuadé d'avoir pourtant essayé un truc dans le genre ! J'ai dû rater un truc.
Encore merci.

Dernière question : le zip entre guillemets ou entre apostrophes ?
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 407
7 févr. 2012 à 19:56
Erreur de frappe, mais les 2 sont bonnes ;-))
0
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
Modifié par jisisv le 7/02/2012 à 21:50
Et tant qu'on y est, utilise l'option -iname qui permet de ne pas tenir compte de la casse des modèles.
0
lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
Modifié par lami20j le 7/02/2012 à 22:30
Salut,

find /home -regextype posix-egrep -regex '.*\.(rar|zip|7z|exe|bat|vbs)$'
ou avec iregex
lami20j
3