La commande find ne renvoie pas les résultats (macOS High Sierra 10.13.4)

1

le find La commande ne renvoie tout à coup aucun résultat, même pour les fichiers dont je connais l'existence. Par exemple, si je lance:

find . -name calendar.sql

à partir d'un répertoire que je connais contient un fichier appelé calendar.sql, rien n'est retourné. Entourer le nom du fichier avec des guillemets n'aide pas.

Pas sûr de ce qui se passe. J'ai utilisé la commande bien dans le passé.

StevieD
la source
Ah, intéressant. Si je tape sudo devant, cela fonctionne maintenant. Ce qui donne?
StevieD
Il semble que quelque part dans le chemin du répertoire se trouve un sous-répertoire où vous n’avez pas accès en lecture ou en exécution.
AFH

Réponses:

5

Ma première hypothèse serait que vous ayez maintenant un autre find sur votre chemin ou quelque chose a défini un find fonction ou alias.

Essayer /usr/bin/find . -name calendar.sql l'appeler directement. si cela fonctionne alors essayez which find qui peut découvrir une découverte errante dans votre PATH. Également alias listera tous les alias et set | grep find trouvera toutes les occurrences du mot find dans les fonctions actuellement définies.

Tony Williams
la source
1
En bash, vous pouvez utiliser type find pour savoir ce que le shell pense de "trouver" (c'est-à-dire s'il s'agit d'un alias, d'une fonction, d'une commande intégrée ou d'une commande externe).
Gordon Davisson
1
Ugh, à un moment dans le passé, j'ai ajouté alias find="find . -name $1" à mon fichier de configuration bash.
StevieD
Nous le faisons tous à un moment donné, @StevieD. J'appelle ça une "expérience d'apprentissage" :)
Tony Williams