exécuter en parallèle et attendre la fin

Le
Thomas
bonjour :-)


est ce que c'est possible d'exécuter en parallèle et attendre la fin ?


du genre :

commande1 &
commande2 &
on attend que commande1 et commande2 soient terminées
commande3

parce que c'est plus rapide d'exécuter commande1 et commande2 en
parallèle, par exemple parce qu'elles n'utilisent pas les mêmes
ressources,
mais on a besoin d'attendre qu'elles soient terminées pour pouvoir
exécuter commande3

--
j'agis contre l'assistanat, je travaille dans une SCOP !
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Stephane Chazelas
Le #780448
2007-09-14, 15:44(+02), Thomas:
[...]
est ce que c'est possible d'exécuter en parallèle et attendre la fin ?


du genre :

commande1 &
commande2 &
on attend que commande1 et commande2 soient terminées
commande3

parce que c'est plus rapide d'exécuter commande1 et commande2 en
parallèle, par exemple parce qu'elles n'utilisent pas les mêmes
ressources,
mais on a besoin d'attendre qu'elles soient terminées pour pouvoir
exécuter commande3


commande1 &
commande2 &
wait
commande3

--
Stéphane

Thomas
Le #780447
In article Stephane Chazelas
2007-09-14, 15:44(+02), Thomas:
[...]
est ce que c'est possible d'exécuter en parallèle et attendre la fin ?


du genre :

commande1 &
commande2 &
on attend que commande1 et commande2 soient terminées
commande3

parce que c'est plus rapide d'exécuter commande1 et commande2 en
parallèle, par exemple parce qu'elles n'utilisent pas les mêmes
ressources,
mais on a besoin d'attendre qu'elles soient terminées pour pouvoir
exécuter commande3


commande1 &
commande2 &
wait
commande3


merci bcp :-)


pas grand chose à voire :

peut on avoir la doc des commandes "builtin" simplement ?
avec man wait on apprend juste que c'est "builtin", mais on n'a pas la
doc,
et il faut aller tout au bout de man sh (c'est long :-/ )

--
j'agis contre l'assistanat, je travaille dans une SCOP !


Stephane Chazelas
Le #780446
2007-09-14, 16:13(+02), Thomas:
[...]
peut on avoir la doc des commandes "builtin" simplement ?
avec man wait on apprend juste que c'est "builtin", mais on n'a pas la
doc,
et il faut aller tout au bout de man sh (c'est long :-/ )


Depend du shell. Avec bash: help wait
Avec zsh, voir "Accessing On-Line Help" dans info -f zsh -n
Utilities.

Avec bash et zsh, utiliser l'index dans info.

--
Stéphane

Stephane Chazelas
Le #780193
2007-09-14, 14:18(+00), Stephane Chazelas:
2007-09-14, 16:13(+02), Thomas:
[...]
peut on avoir la doc des commandes "builtin" simplement ?
avec man wait on apprend juste que c'est "builtin", mais on n'a pas la
doc,
et il faut aller tout au bout de man sh (c'est long :-/ )


Depend du shell. Avec bash: help wait
Avec zsh, voir "Accessing On-Line Help" dans info -f zsh -n
Utilities.

Avec bash et zsh, utiliser l'index dans info.


Ah et puis, pour les scripts, bien sur, utiliser le standard:
http://www.opengroup.org/onlinepubs/009695399/utilities/wait.html
par exemple.

--
Stéphane


Thomas
Le #780191
In article Stephane Chazelas
2007-09-14, 14:18(+00), Stephane Chazelas:
2007-09-14, 16:13(+02), Thomas:
[...]
peut on avoir la doc des commandes "builtin" simplement ?
avec man wait on apprend juste que c'est "builtin", mais on n'a pas la
doc,
et il faut aller tout au bout de man sh (c'est long :-/ )


Depend du shell. Avec bash: help wait



merci bcp :-)

Avec bash et zsh, utiliser l'index dans info.



qq c'est ? (juste une curiosité, help me suffit pour l'instant :-) )


Ah et puis, pour les scripts, bien sur, utiliser le standard:
http://www.opengroup.org/onlinepubs/009695399/utilities/wait.html
par exemple.


j'ai pas compris "utiliser le standard"
merci pour le lien:-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !



Thomas
Le #780190
In article Stephane Chazelas
2007-09-14, 15:44(+02), Thomas:
[...]
est ce que c'est possible d'exécuter en parallèle et attendre la fin ?


commande1 &
commande2 &
wait
commande3



un peu dans le même genre (j'hésitais à faire un nouveau fil pour ça) :

il y a un script que je termine par
commande > dossier/log &

je ne veux surtout pas attendre la fin de commande parce que je veux que
ce script se termine très vite

mais, si possible, j'aimerais quand même être prévenu (avec un code
d'erreur, comme quand la dernière commande retourne une erreur) si
commande ne peut pas être lancé correctement
(si commande n'existe pas, si commande n'est pas exécutable, si le
dossier du log n'existe pas, ...)
est ce que c'est possible de façon pas trop compliquée ? :-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !


Stephane Chazelas
Le #780187
2007-09-15, 01:21(+02), Thomas:
[...]
il y a un script que je termine par
commande > dossier/log &

je ne veux surtout pas attendre la fin de commande parce que je veux que
ce script se termine très vite

mais, si possible, j'aimerais quand même être prévenu (avec un code
d'erreur, comme quand la dernière commande retourne une erreur) si
commande ne peut pas être lancé correctement
(si commande n'existe pas, si commande n'est pas exécutable, si le
dossier du log n'existe pas, ...)
est ce que c'est possible de façon pas trop compliquée ? :-)


Faudra faire les tests a la main:

if type commande > /dev/null; then
exec > dossier/log
commande &
fi

exec fait terminer le shell s'il echoue.

--
Stéphane

Stephane Chazelas
Le #780186
2007-09-15, 01:03(+02), Thomas:
[...]
Ah et puis, pour les scripts, bien sur, utiliser le standard:
http://www.opengroup.org/onlinepubs/009695399/utilities/wait.html
par exemple.


j'ai pas compris "utiliser le standard"
merci pour le lien:-)


En general, pour les scripts, on essaie d'utiliser la syntaxe C
standard, comme ca on n'a pas a se poser la question de si ca
marchera ou pas sous tel ou tel system. De meme que quand on
ecrit en C, on prefere utiliser du C standard que du GNU C (qui
n'est reconnu que par gcc).

Et le(s) standard(s) pour la syntaxe sh est defini a l'addresse
que j'ai donnee.

--
Stéphane


Thomas
Le #777529
In article Stephane Chazelas
2007-09-15, 01:21(+02), Thomas:
[...]
il y a un script que je termine par
commande > dossier/log &

je ne veux surtout pas attendre la fin de commande parce que je veux que
ce script se termine très vite

mais, si possible, j'aimerais quand même être prévenu (avec un code
d'erreur, comme quand la dernière commande retourne une erreur) si
commande ne peut pas être lancé correctement
(si commande n'existe pas, si commande n'est pas exécutable, si le
dossier du log n'existe pas, ...)
est ce que c'est possible de façon pas trop compliquée ? :-)


Faudra faire les tests a la main:

if type commande > /dev/null; then
exec > dossier/log
commande &
fi

exec fait terminer le shell s'il echoue.


merci :-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !


Thomas
Le #772031
In article Stephane Chazelas
2007-09-15, 01:03(+02), Thomas:
[...]
Ah et puis, pour les scripts, bien sur, utiliser le standard:
http://www.opengroup.org/onlinepubs/009695399/utilities/wait.html
par exemple.


j'ai pas compris "utiliser le standard"
merci pour le lien:-)


En general, pour les scripts, on essaie d'utiliser la syntaxe C
standard, comme ca on n'a pas a se poser la question de si ca
marchera ou pas sous tel ou tel system. De meme que quand on
ecrit en C, on prefere utiliser du C standard que du GNU C (qui
n'est reconnu que par gcc).


ok :-)
(moi je programme en ada, donc de ce point de vue c'est plus rigide et
on a moins de pb :-) )


Et le(s) standard(s) pour la syntaxe sh est defini a l'addresse
que j'ai donnee.


alors que help et man donnent tout ce qu'on a le droit de faire
localement ... c'est logique :-)
merci :-)

--
j'agis contre l'assistanat, je travaille dans une SCOP !



Publicité
Poster une réponse
Anonyme