find ne trouve pas récursivement
Je suis dans le répertoire "home" et j'ai exécuté cette commande
find . -iname *.mov
et il produit
./root/movies/Corey/holtorf/Intro.mov
Maintenant, je "cd .." et exécuter la même commande
find . -iname *.mov
Cette fois "l'Intro.mov" n'est pas dans le résultat.
Quels sont le raisonnement derrière cela?
Et qu'est-ce que la commande de recherche de manière récursive pour chaque fichier se terminant par ".mov" dans le répertoire courant? Merci.
source d'informationauteur Sean Xiao
Vous devez vous connecter pour publier un commentaire.
Lorsque vous utilisez un caractère générique dans un argument qu'elle est développée par le shell. Pour éviter cela, vous devez écrire "*.mov".
Dans votre cas, le shell étend à tous les fichiers qu'il trouve avant en passant l'argument à trouver, qui obtient ensuite une liste de fichiers et ne sera pas à la recherche est basée sur le modèle original.
Vous pourriez avoir besoin d'ajouter
-follow
si votre répertoire est en fait un lien symbolique. Également citer le modèle sinon le shell va essayer de l'élargir avant de passer àfind
.Je ne peux pas dire encore si je vais poster cela comme une réponse (mes excuses à l'avance).
Veuillez consulter ce post "trouver des chemins d'accès doit précéder l'expression:" Comment puis-je spécifier une recherche récursive qui trouve également des fichiers dans le répertoire courant?
Et des informations supplémentaires qui peuvent vous bénéficiez:
Récursive de trouver un fichier avec un nom dans votre répertoire courant, vous pouvez utiliser grep ou trouver
ou pour de la casse de la recherche
et pour trouver
Également un lien utile http://www.cyberciti.biz/faq/howto-recursively-search-all-files-for-words/
Je voudrais utiliser:
récursive numérique de recherche