Sophie

Sophie

distrib > Mandriva > 10.0-com > i586 > by-pkgid > 664c05250964d29fcf1d0bb310959fbc > files > 28

mandrake-doc-fr-10.0-5.1.100mdk.noarch.rpm

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Lancement et manipulation de processus en arrière-plan</title><meta name="generator" content="DocBook XSL Stylesheets V1.64.0"><link rel="home" href="index.html" title="Manuel de référence"><link rel="up" href="cmdline.html" title="Chapitre 3. Introduction à la ligne de commande"><link rel="previous" href="cmdline-completion.html" title="Le complètement (completion)
  dans les lignes de commande"><link rel="next" href="cmdline-end.html" title="Le mot de la fin"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Lancement et manipulation de processus en arrière-plan</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="cmdline-completion.html">Précédent</a> </td><th width="60%" align="center">Chapitre 3. Introduction à la ligne de commande</th><td width="20%" align="right"> <a accesskey="n" href="cmdline-end.html">Suivant</a></td></tr></table><hr></div><div class="sect1" lang="fr"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="cmdline-job"></a>Lancement et manipulation de processus en arrière-plan</h2></div></div><div></div></div><p><a name="BId-cmdline-pa110"></a>   Vous aurez remarqué que quand vous lancez une commande à partir
   d'un <tt class="systemitem">Terminal</tt>, vous devez normalement attendre que la
   commande soit terminée pour que le <span class="foreignphrase"><i class="foreignphrase">shell</i></span> vous rende la
   main : c'est que vous avez lancé la commande au 
   <a name="BId-cmdline-gt7" href="glossary.html#term-foreground"><i class="glossterm">premier plan</i></a>. Il y a des situations,
   cependant, où cela n'est pas souhaitable.
  </p><p><a name="BId-cmdline-pa111"></a>   Supposons, par exemple, que vous ayez entrepris de copier
   récursivement un gros répertoire vers un autre. Vous décidez
   également d'ignorer les erreurs, donc vous redirigez le canal
   d'erreur vers <tt class="filename">/dev/null</tt> :
  </p><a name="BId-cmdline-sc26"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">cp -R images/ /shared/ 2&gt;/dev/null</pre></td></tr></table><p><a name="BId-cmdline-pa112"></a>   Une telle commande peut prendre plusieurs minutes avant de se
	      terminer. Vous disposez alors de deux solutions : la première,
   brutale, est d'interrompre (de « <span class="quote">tuer</span> ») la commande
   pour la relancer plus tard, quand vous aurez le temps. Pour ce
   faire, tapez <b class="userinput"><tt>Ctrl+c</tt></b> : cela terminera le
   processus et vous retournerez alors à l'invite. Mais attendez, ne
   faites pas ça ! Lisez ce qui suit.
  </p><p><a name="BId-cmdline-pa113"></a>   
         <a class="indexterm" name="BId-cmdline-it50"></a> Supposons que
         vous vouliez exécuter une commande pendant que vous faites
         quelque chose d'autre. La solution est de placer le processus
         en <a name="BId-cmdline-gt8" href="glossary.html#term-background"><i class="glossterm">arrière-plan</i></a>. Pour ce
         faire, tapez d'abord <b class="userinput"><tt>Ctrl+z</tt></b> pour
         suspendre le processus :
  </p><a name="BId-cmdline-sc27"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ cp -R images/ /shared/ 2&gt;/dev/null
  # Tapez Ctrl+z ici
[1]+  Stopped                 cp -R images/ /shared/ 2&gt;/dev/null
$
</pre></td></tr></table><p><a name="BId-cmdline-pa114"></a>   et vous voilà à nouveau devant l'invite. Le processus est alors
   suspendu, dans l'attente d'être relancé (comme l'indique le mot-clé
   <tt class="literal">Stopped</tt>, soit arrêté). Vous allez le relancer mais en
   le maintenant en arrière-plan. Tapez <span><b class="command">bg</b></span> (pour
   <span class="foreignphrase"><i class="foreignphrase">BackGround</i></span>, soit arrière-plan) provoquera
   exactement l'effet escompté :
  </p><a name="BId-cmdline-sc28"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">$ bg
[1]+ cp -R images/ /shared/ 2&gt;/dev/null &amp;
$
</pre></td></tr></table><p><a name="BId-cmdline-pa115"></a> Le processus aura alors repris son
   exécution en tâche de fond, ce qu'indique le signe
   <span><b class="keycap">&amp;</b></span> (esperluette) à la fin de la ligne. Vous
   vous retrouvez alors en face de l'invite et pouvez continuer à
   travailler. Un processus qui tourne en tâche de fond, ou
   arrière-plan, est appelé un <a name="BId-cmdline-gt9" href="glossary.html#term-job"><i class="glossterm"> <span class="foreignphrase"><i class="foreignphrase">job</i></span>
   </i></a>.
  </p><p><a name="BId-cmdline-pa116"></a>   Vous pouvez bien sûr lancer directement des processus en tâche de
   fond, justement en ajoutant une <span><b class="keycap">&amp;</b></span> à la fin de la
   commande. Ainsi, vous pouvez lancer la copie du répertoire en
   arrière-plan en écrivant :
  </p><a name="BId-cmdline-sc29"></a><table border="0" bgcolor="#E0E0E0"><tr><td><pre class="screen">cp -R images/ /shared/ 2&gt;/dev/null &amp;</pre></td></tr></table><p><a name="BId-cmdline-pa117"></a>   Si vous le souhaitez, vous pouvez également remettre ce processus
   au premier plan et attendre qu'il se termine en tapant <span><b class="command">fg</b></span>
   (pour <span class="foreignphrase"><i class="foreignphrase">ForeGround</i></span>, soit premier plan). Répétez
   alors la séquence <b class="userinput"><tt>Ctrl+z</tt></b>, <span><b class="command">bg</b></span> pour le remettre
   à l'arrière-plan.
  </p><p><a name="BId-cmdline-pa118"></a>   Vous pouvez lancer plusieurs jobs de cette façon : chacune de
   ces commandes recevra alors un numéro de job. La commande
   <span><b class="command">jobs</b></span> du <span class="foreignphrase"><i class="foreignphrase">shell</i></span> indique la liste de tous les jobs
   associés au <span class="foreignphrase"><i class="foreignphrase">shell</i></span> courant. Le job précédé d'un signe
   <tt class="literal">+</tt> désigne le dernier processus mis en tâche de fond.
   Pour remettre un job en particulier au premier plan, vous pourrez
   alors taper <span><b class="command">fg &lt;n&gt;</b></span> où <tt class="option">&lt;n&gt;</tt>
   désigne le numéro de job, par exemple <span><b class="command">fg
   5</b></span>.
  </p><p><a name="BId-cmdline-pa119"></a>   Notez que vous pouvez également suspendre ou lancer de cette façon
   des applications <a name="BId-cmdline-gt10" href="glossary.html#term-full-screen"><i class="glossterm">plein
   écran</i></a> (si elles sont correctement programmées), telles que
   <span><b class="command">less</b></span> ou un éditeur de texte comme <span class="application">Vi</span>, et les
   remettre au premier plan quand vous le voulez.
  </p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="cmdline-completion.html">Précédent</a> </td><td width="20%" align="center"><a accesskey="u" href="cmdline.html">Niveau supérieur</a></td><td width="40%" align="right"> <a accesskey="n" href="cmdline-end.html">Suivant</a></td></tr><tr><td width="40%" align="left" valign="top">Le complètement (completion)
  dans les lignes de commande </td><td width="20%" align="center"><a accesskey="h" href="index.html">Sommaire</a></td><td width="40%" align="right" valign="top"> Le mot de la fin</td></tr></table></div></body></html>