Ce n'est peut être pas la super solution mais je crois que ça peux
t'aider.
# max_processeurs=2
# let a=0; find . | while read file; do mon_programme "$file" & let a=(a
+1)%max_processeurs; [ $a == 0 ] && wait; done
ciao, Leo
Il giorno mar, 23/08/2005 alle 16.44 +0200, Cedric BRINER ha scritto:
> bonjour,
>
> je desire executer un programme sur tout les fichiers qu'un find m'aura
> trouve.
> find ./ -name '_image_commencant_par*' exec mon_programme {} \;
>
> mais dans le cas d'une machine avec plusieurs processeurs, j'aimerai avoir
> autant d'instance
> de mon_programme que de processeurs afin d'utiliser toute la puissance de la
> machine.
>
> L'idee de mettre un & afin de tous les mettres en paralelles me semble une
> mauvaise idee puisque
> les images sur lequel le programme tourne sont consequentes et qu'il y aura
> un grand nombre
> d'images.
>
> et malheureusement, je n'ai pas trouve d'option -max-instance-executed dans
> le find. arrh!
>
>
>
> une idee sur comment faire ?
>
>
> Cedric
>
_______________________________________________
gull mailing list
[email protected]
http://lists.alphanet.ch/mailman/listinfo/gull