J'ai un grand nombre de répertoire (mettons de 1 à 999) qui contient
différents répertoires dont un répertoire src.
Je veux rechercher tous les fichiers .c contenus dans ces répertoires src
(mais ceux des répertoires src_old par ex).
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je
finis par obtenir le message
"ksh: /usr/bin/find: 0403-027 The parameter list is too long."
D'après man find, on peut filtrer avec la commande find sur le nom du chemin
d'accès :
"To find all accessible files whose path name contains find, type: find
. -name '*find*' -print"
J'ai donc essayé
find . -name "*/src/*.c"
mais ça ne donne rien ...
Quelqu'un a une solution ?
(j'ai cru comprendre qu'un option -path existait mais elle n'existe pas chez
moi (AIX 4.3.3))
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred
Bonjour,
J'ai un grand nombre de répertoire (mettons de 1 à 999) qui contient différents répertoires dont un répertoire src. Je veux rechercher tous les fichiers .c contenus dans ces répertoires src (mais ceux des répertoires src_old par ex).
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je finis par obtenir le message "ksh: /usr/bin/find: 0403-027 The parameter list is too long."
D'après man find, on peut filtrer avec la commande find sur le nom du chemin d'accès : "To find all accessible files whose path name contains find, type: find . -name '*find*' -print"
J'ai donc essayé
find . -name "*/src/*.c"
mais ça ne donne rien ...
Quelqu'un a une solution ?
(j'ai cru comprendre qu'un option -path existait mais elle n'existe pas chez moi (AIX 4.3.3))
Bonjour,
Il faut mettre des simples quote sinon c'est le shell qui interprète les *
find . -name '*/src/*.c'
A+
Fred
Bonjour,
J'ai un grand nombre de répertoire (mettons de 1 à 999) qui contient
différents répertoires dont un répertoire src.
Je veux rechercher tous les fichiers .c contenus dans ces répertoires src
(mais ceux des répertoires src_old par ex).
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je
finis par obtenir le message
"ksh: /usr/bin/find: 0403-027 The parameter list is too long."
D'après man find, on peut filtrer avec la commande find sur le nom du chemin
d'accès :
"To find all accessible files whose path name contains find, type: find
. -name '*find*' -print"
J'ai donc essayé
find . -name "*/src/*.c"
mais ça ne donne rien ...
Quelqu'un a une solution ?
(j'ai cru comprendre qu'un option -path existait mais elle n'existe pas chez
moi (AIX 4.3.3))
Bonjour,
Il faut mettre des simples quote sinon c'est le shell qui interprète les *
J'ai un grand nombre de répertoire (mettons de 1 à 999) qui contient différents répertoires dont un répertoire src. Je veux rechercher tous les fichiers .c contenus dans ces répertoires src (mais ceux des répertoires src_old par ex).
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je finis par obtenir le message "ksh: /usr/bin/find: 0403-027 The parameter list is too long."
D'après man find, on peut filtrer avec la commande find sur le nom du chemin d'accès : "To find all accessible files whose path name contains find, type: find . -name '*find*' -print"
J'ai donc essayé
find . -name "*/src/*.c"
mais ça ne donne rien ...
Quelqu'un a une solution ?
(j'ai cru comprendre qu'un option -path existait mais elle n'existe pas chez moi (AIX 4.3.3))
Bonjour,
Il faut mettre des simples quote sinon c'est le shell qui interprète les *
find . -name '*/src/*.c'
A+
Fred
Stephane Chazelas
On Wed, 14 Dec 2005 12:35:03 +0100, deub wrote: [...]
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je finis par obtenir le message "ksh: /usr/bin/find: 0403-027 The parameter list is too long." [...]
On Wed, 14 Dec 2005 12:35:03 +0100, deub wrote:
[...]
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je
finis par obtenir le message
"ksh: /usr/bin/find: 0403-027 The parameter list is too long."
[...]
On Wed, 14 Dec 2005 12:35:03 +0100, deub wrote: [...]
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je finis par obtenir le message "ksh: /usr/bin/find: 0403-027 The parameter list is too long." [...]
On 14 Dec 2005 14:50:12 GMT, Stephane Chazelas wrote:
On Wed, 14 Dec 2005 12:35:03 +0100, deub wrote: [...]
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je finis par obtenir le message "ksh: /usr/bin/find: 0403-027 The parameter list is too long." [...]
On 14 Dec 2005 14:50:12 GMT, Stephane Chazelas wrote:
On Wed, 14 Dec 2005 12:35:03 +0100, deub wrote:
[...]
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je
finis par obtenir le message
"ksh: /usr/bin/find: 0403-027 The parameter list is too long."
[...]
On 14 Dec 2005 14:50:12 GMT, Stephane Chazelas wrote:
On Wed, 14 Dec 2005 12:35:03 +0100, deub wrote: [...]
Je peux écrire :
find */src/ -name "*.c"
et ça fonctionne mais si le nombre de répertoire est trop important, je finis par obtenir le message "ksh: /usr/bin/find: 0403-027 The parameter list is too long." [...]
Ca me semble bien ... Le "( -name . -o -prune )", c'est pour se limiter au répertoire courant , c'est ça ? J'ai un peu de mal avec le prune, et pourtant, j'ai fait un man !
Ca me semble bien ...
Le "( -name . -o -prune )", c'est pour se limiter au répertoire courant ,
c'est ça ?
J'ai un peu de mal avec le prune, et pourtant, j'ai fait un man !
Ca me semble bien ... Le "( -name . -o -prune )", c'est pour se limiter au répertoire courant , c'est ça ? J'ai un peu de mal avec le prune, et pourtant, j'ai fait un man !
Alors là ... pourquoi faut il relancer un shell ?? [...]
Parce que {}/src ne marche pas. {} n'est remplacé par le chemin du fichier que s'il est tout seul dans son argument (quoique certains find le font aussi dans foo{}bar mais c'est pas standard).
-- Stephane
On Thu, 15 Dec 2005 15:36:48 +0100, deub wrote:
[...]
Le "( -name . -o -prune )", c'est pour se limiter au répertoire courant ,
c'est ça ?
Alors là ... pourquoi faut il relancer un shell ??
[...]
Parce que {}/src ne marche pas. {} n'est remplacé par le chemin
du fichier que s'il est tout seul dans son argument (quoique
certains find le font aussi dans foo{}bar mais c'est pas
standard).
Alors là ... pourquoi faut il relancer un shell ?? [...]
Parce que {}/src ne marche pas. {} n'est remplacé par le chemin du fichier que s'il est tout seul dans son argument (quoique certains find le font aussi dans foo{}bar mais c'est pas standard).