Comportement de find
Le
Pierre

Bonjour,
Quelqu'un pourrait-il m'expliquer le comportement ci-dessous de
"find" ?
Pourquoi "find" ne trouve t-elle pas le fichier ksh lors d'une
recherche à partir de /bin alors que le fichier est bien là ?
La même commande le trouve si l'on y va et que l'on recherche "à
l'endroit où l'on est" ?
sun_v440:/bin> ls ksh
ksh
sun_v440:/bin> find /bin -name ksh
sun_v440:/bin> find /bin -name ksh | wc -l
0
sun_v440:/bin> find . -name ksh
./ksh
sun_v440:/bin> find . -name ksh | wc -l
1
D'avance, je vous remercie.
Pierre.
P.S.:
sun_v440:/bin> ls -l ksh
-r-xr-xr-x 3 root bin 209184 avr 5 2007 ksh
Quelqu'un pourrait-il m'expliquer le comportement ci-dessous de
"find" ?
Pourquoi "find" ne trouve t-elle pas le fichier ksh lors d'une
recherche à partir de /bin alors que le fichier est bien là ?
La même commande le trouve si l'on y va et que l'on recherche "à
l'endroit où l'on est" ?
sun_v440:/bin> ls ksh
ksh
sun_v440:/bin> find /bin -name ksh
sun_v440:/bin> find /bin -name ksh | wc -l
0
sun_v440:/bin> find . -name ksh
./ksh
sun_v440:/bin> find . -name ksh | wc -l
1
D'avance, je vous remercie.
Pierre.
P.S.:
sun_v440:/bin> ls -l ksh
-r-xr-xr-x 3 root bin 209184 avr 5 2007 ksh
/bin ne serait pas un lien symbolique, par hasard ?
:/tmp% mkdir toto
:/tmp% ln -s toto titi
:/tmp% touch toto/pouet
:/tmp% find titi -name pouet
:/tmp% find titi/ -name pouet
titi/pouet
:/tmp%
--
Arnaud
/bin ne serait pas un lien symbolique, par hasard ?
:/tmp% mkdir toto
:/tmp% ln -s toto titi
:/tmp% touch toto/pouet
:/tmp% find titi -name pouet
:/tmp% find titi/ -name pouet
titi/pouet
:/tmp% find titi
titi
:/tmp% find titi/
titi/
titi/pouet
:/tmp%
--
Arnaud
Jolie remarque, je n'y avais même pas pensé !!
(Quelle idée de faire un symlink avec /bin aussi.. ;) )
Du coup, un find -L devrait résoudre le souci...
(plutôt que le trailing slash, facilement "oubliable", et qui ne marche
pas pour les sous-dossiers..)
% find -L titi -name pouet
titi/pouet
%
--
Hugues Hiegel [http://www.hiegel.fr/~hugues/]