Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 09/05/2020, à 20:45

Lsy

[Résolu] find: Comment mettre les parenthèses

Bonjour,
Je souhaite rechercher dans le répertoire sly/ les fichiers .odt , .pdf et .iso dont les tailles sont +200M,
mais j'ai l'embarra entre ces deux syntaxe ci-dessous :
1°)

sly@sly-Notebook:~/Bureau$ find /sly/ \( -name "*.odt" -o -name "*.pdf" -o -name "*.iso" \) -size +200M -print
/sly/isorarzip/ubuntu-19.04-desktop-amd64.iso
/sly/isorarzip/kali-linux-2019.2-i386.iso
/sly/isorarzip/Adobe CS6 Master Collection.iso
/sly/isorarzip/kubuntu-18.04.3-desktop-i386.iso
/sly/copie-bureau/isofile/ubuntu-19.04-desktop-amd64.iso
/sly/copie-bureau/isofile/Adobe CS6 Master Collection.iso
/sly/copie-bureau/isofile/kubuntu-18.04.3-desktop-i386.iso
sly@sly-Notebook:~/Bureau$ 

2°)

sly@sly-Notebook:~/Bureau$ find /sly/ \( -name "*.odt" -o -name "*.pdf" -o -name "*.iso" -a -size +200M \) -print
une très longue liste de fichiers 

Même si je suis convaincu que la première syntaxe est la bonne, la deuxième me donne du fil à retordre quant à une explication claire de ce que j'obtiens là!

Je résume:
Au 1°): l'option '-size +200M' est après la parenthèse
Au 2°): l'option '-a -size +200M' est dans la parenthèse

Je vous prie de m'aider pour évider que je suprime les fichiers importants!

Dernière modification par Lsy (Le 11/05/2020, à 16:38)


« La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information. »  (Albert Einstein).

Hors ligne

#2 Le 09/05/2020, à 21:14

kamaris

Re : [Résolu] find: Comment mettre les parenthèses

Dans le second cas, le -a ne fait la jonction qu'entre -name "*.iso" et -size +200M.
Donc les fichiers dont le nom est en *.odt ou *.pdf peuvent faire la taille qu'ils veulent, mais les *.iso doivent faire plus de 200M.
Et donc une manière plus claire d'écrire la seconde commande serait :

find /sly/ -name "*.odt" -o -name "*.pdf" -o \( -name "*.iso" -a -size +200M \) -print

Hors ligne

#3 Le 09/05/2020, à 22:01

Lsy

Re : [Résolu] find: Comment mettre les parenthèses

Merci

Dans le second cas, le -a ne fait la jonction qu'entre -name "*.iso" et -size +200M.
Donc les fichiers dont le nom est en *.odt ou *.pdf peuvent faire la taille qu'ils veulent, mais les *.iso doivent faire plus de 200M.
Et donc une manière plus claire d'écrire la seconde commande serait :

 find /sly/ -name "*.odt" -o -name "*.pdf" -o \( -name "*.iso" -a -size +200M \) -print 

voilà que les choses devient plus claires !
Merci wink

Dernière modification par Lsy (Le 09/05/2020, à 22:09)


« La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information. »  (Albert Einstein).

Hors ligne