Jai exécuté cette commande:

find /home/ ~ -type f -size 5 "*." -a -30 

mais il a dit find: paths must precede expression. Jai du mal à obtenir find de rechercher des correspondances dans le répertoire courant ainsi que dans ses sous-répertoires. Que signifie cette erreur et comment puis-je obtenir les correspondances du répertoire actuel et de ses sous-répertoires?

Réponse

Comme vous semblez comprendre, vous pouvez spécifier plusieurs points de départ pour find; Par exemple,

find dir1 dir2 dir3 -type f … (other arguments) …

Mais vos "*." et -30 ne sont pas des termes de recherche / action valides, donc find pense que vous « fournissez plus de points de départ après -type f. Peut-être voulez-vous dire -name "*." et -mtime -30?

PS -name "*." correspondrait à tous les noms se terminant par un point ( . ), cest-à-dire point ou point complet. Bien que valide, ce serait un schéma assez inhabituel. est-ce vraiment ce que vous voulez dire?

PPS Si votre répertoire personnel (représenté par ~) est sous /home, alors votre commande est redondante, car elle recherchera deux fois votre répertoire personnel.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *