Newer
Older
cours-unix-shell / UnixShell_cours2018 / tpRappels.fre.html
<html>
  <head>
    
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <link REL="STYLESHEET" TYPE="text/css" TITLE="Style DILIB" HREF="../../dilib.css">
    <title>Travaux Pratiques 
      (Rappels) 
      - UNIX</title>
    <style type="text/css">
      Q						{ font-style: italic; }
      TABLE					{ text-align: center; }
      .attention				{ font-style: italic; }
      .remarque, .exemple, .remarque_suite	{ font-size: smaller; }
      .remarque					{ margin-bottom: 2; }
      .remarque_suite				{ margin-bottom: 2; margin-top: 0; }
      .remarque:before				{ content: "REMARQUE :"; }
      .exemple:before				{ content: "Exemple : "; }
      .attention:before				{ content: "ATTENTION :"; }
      .solution					{ display: none; }
      .reponse					{ font-style: italic; }
    </style>
    <script language="JavaScript1.2" type="text/javascript">
      /* nom du fichier contenant le corrig&eacute; &eacute;quivalent &agrave; celui de
         ce fichier */
      var corrige='corrigesRappels.fre.html';
      
      function Montrer(divId) {
        if(document.getElementById && document.styleSheets) {
          document.getElementById(divId).style.display='block';
          document.getElementById("action"+divId).style.display='none';
        }
      }

      function Cacher(divId) {
        if(document.getElementById && document.styleSheets) {
          document.getElementById(divId).style.display='none';
          document.getElementById("action"+divId).style.display='block';
        }
      }
      
      function EcrireBouton(divId) {
        if(document.getElementById && document.styleSheets) {
          document.writeln('    <div id="action'+divId+'" " style="font-size: smaller;">');
          document.writeln('      <a href="javascript:Montrer(\''+divId+'\');">Voir la solution</a>');
          document.writeln('      <p></p>');
          document.writeln('    </div>');
        }
        else {
          document.writeln('    <p style="font-size: smaller;"><a href="'+corrige+'#'+divId+'">Voir la solution</a></p>');
        }
      }
    </script>
    <link rel="copyright" href="http://www.inist.fr/"><link rel="author" href="http://dilib.inist.fr/membres.html"><link rel="chapter" href="caracteristiques.fre.html" title="UNIX"><link rel="chapter" href="X.fre.html" title="X Window"><link rel="chapter" href="redirPipes.fre.html" title="Rappels"><link rel="chapter" href="newCommandsUser.fre.html" title="Commandes UNIX"><link rel="chapter" href="shellVars.fre.html" title="Shell"><link rel="chapter" href="sed.fre.html" title="Sed"><link rel="chapter" href="make.fre.html" title="Make"><link rel="index" href="http://dilib.inist.fr/dilib/v04Main/IndexSite/Server/FR.resource.index.html"><link rel="top" title="Accueil de DILIB" href="http://dilib.inist.fr/dilib/v04Main/"><link rel="alternate" title="English version" href="tpRappels.eng.html"><link rel="up" href="index.fre.html" title="Tutorial UNIX / Shell">
    <link rel="section" href="redirPipes.fre.html" title="Redirections"><link rel="section" href="commandesBase.fre.html" title="Base"><link rel="section" href="tpRappels.fre.html" title="TP">
    <link rel="first" href="caracteristiques.fre.html" title="Caract&eacute;ristiques d'UNIX">
    <link rel="previous" href="commandesBase.fre.html#wm" title="Base">
    <link rel="next" href="newCommandsUser.fre.html" title="Commandes UNIX">
    <link rel="last" href="tpRappels.fre.html" title="Travaux Pratiques">
  </head>

  <body>

    <h1>Travaux Pratiques 
	(Bases)</h1>

    <div id="navcontainer">
      <ul id="navlist">
	<li><a href="caracteristiques.fre.html">UNIX</a>
	</li>
	<li><a>Bases</a>
	  <ul id="subnavlist">
	    <li><a href="redirPipes.fre.html">Redirections</a></li>
	    <li><a href="commandesBase.fre.html">Base</a></li>
	    <li><a href="tpRappels.fre.html" id="subcurrent">TP</a></li>
	  </ul>
	</li>
	<li><a href="newCommandsUser.fre.html">Commandes</a>
	</li>
	<li><a href="shellVars.fre.html">Shell</a>
	</li>
	<li><a href="sed.fre.html">Sed</a>
	</li>
	<li><a href="make.fre.html">Make</a>
	</li>
      </ul>
    </div>
    
    <div class="content">
    <p>
      L'objectif de cette premi&egrave;re session de TP est de
      pr&eacute;parer votre environnement de travail en m&ecirc;me
      temps que de r&eacute;viser rapidement quelques notions de
      base.
    </p>

    <h3>Pr&eacute;paration de votre environnement de travail</h3>

    <ul>
      <li>
	Cr&eacute;ez les r&eacute;pertoires 
	<code>Formation</code> et <code>Formation/UnixShell</code> sous votre <code>home
	directory</code> (avec contr&ocirc;le du contenu des
	r&eacute;pertoires &agrave; chaque &eacute;tape avec <code>ls</code> ou 
  <code>ll</code> qui est un alias).

	<script type="text/javascript">
	  EcrireBouton('mkdir');
	</script>
	<div class="solution" id="mkdir">
	  <a href="javascript:Cacher('mkdir');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr>
		<td style="text-align:left">
		  mkdir Formation<br>
		  ls<br>
		  <span class="reponse">... Formation ...</span><br>
		  mkdir Formation/UnixShell<br>
		  ls Formation<br>
		  <span class="reponse">... UnixShell ...</span>
		</td>
	      </tr>
	  </table>
	</div>

      </li>
      <li>
	D&eacute;placez-vous dans le r&eacute;pertoire
	<code>UnixShell</code> en une &eacute;tape et v&eacute;rifiez le r&eacute;pertoire courant.

	<script type="text/javascript">
	  EcrireBouton('cd');
	</script>
	<div class="solution" id="cd">
	  <a href="javascript:Cacher('cd');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr>
		<td style="text-align:left">
		  cd Formation/UnixShell<br>
		  pwd<br>
		  <span class="reponse">/ ... /Formation/UnixShell</span>
		</td>
	      </tr>
	  </table>
	</div>

      </li>
    </ul>

    <h3>Utilisation de quelques commandes Unix de base</h3>

    <ul>
      <li>
	Visualisez l'historique de votre session, avec affichage en sortie standard.

	<script type="text/javascript">
	  EcrireBouton('h');
	</script>
	<div class="solution" id="h">
	  <a href="javascript:Cacher('h');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr>
		<td style="text-align:left">
		  history<br>
		  <span class="reponse">...<br>
		    1    mkdir Formation<br>
		    2    ls<br>
		    3    mkdir Formation/UnixShell<br>
		    ...</span>
		</td>
	      </tr>
	  </table>
	</div>

      </li>
      <li>
	R&eacute;cup&eacute;rez votre historique dans un fichier
	<code>historique.txt</code>.

	<script type="text/javascript">
	  EcrireBouton('redir');
	</script>
	<div class="solution" id="redir">
	  <a href="javascript:Cacher('redir');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr><td>history &gt; historique.txt</td></tr>
	  </table>	
	</div>

      </li>
      <li>
	Affichez &agrave; l'&eacute;cran le contenu de ce fichier
	<code>historique.txt</code>.

	<script type="text/javascript">
	  EcrireBouton('more');
	</script>
	<div class="solution" id="more">
	  <a href="javascript:Cacher('more');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr><td>more historique.txt</td></tr>
	  </table>
	</div>

      </li>
      <li>
	Comptez le nombre de lignes de ce fichier.

	<script type="text/javascript">
	  EcrireBouton('wc');
	</script>
	<div class="solution" id="wc">
	  <a href="javascript:Cacher('wc');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr>
		<td style="text-align:left">wc -l historique.txt<br>
		  <span class="reponse">16 historique.txt</span> (par exemple)
		</td>
	      </tr>
	  </table>	
	</div>
      </li>
      <li>
	Affichez les 3 premi&egrave;res lignes du fichier historique
	de deux fa&ccedil;ons&nbsp;:
	
	<ul>
	  <li>
	    avec une redirection en entr&eacute;e de la commande
	    appropri&eacute;e

	    <script type="text/javascript">
	      EcrireBouton('head');
	    </script>
	    <div class="solution" id="head">
	      <a href="javascript:Cacher('head');" style="font-size: smaller;">Cacher la solution</a>
	      <table border="1" class="commands" style="margin-left:0;">
		  <tr><td>head -3 &lt; historique.txt</td></tr>
	      </table>
	    </div>

	  </li>
	  <li>
	    avec un pipe pour encha&icirc;ner les deux commandes
	    appropri&eacute;es

	    <script type="text/javascript">
	      EcrireBouton('pipe');
	    </script>
	    <div class="solution" id="pipe">
	      <a href="javascript:Cacher('pipe');" style="font-size: smaller;">Cacher la solution</a>
	      <table border="1" class="commands" style="margin-left:0;">
		  <tr><td>cat historique.txt | head -3</td></tr>
	      </table>
	    </div>
	    
	  </li>
	</ul>
      </li>
      <li>
	Renommez le fichier <code>historique.txt</code> en
	<code>monHistorique.txt</code>

	<script type="text/javascript">
	  EcrireBouton('mv');
	</script>
	<div class="solution" id="mv">
	  <a href="javascript:Cacher('mv');" style="font-size: smaller;">Cacher la solution</a>
	  <table border="1" class="commands" style="margin-left:0;">
	      <tr><td>mv historique.txt monHistorique.txt</td></tr>
	  </table>
	</div>

      </li>
    </ul>
    </div>
    <hr>
    <address><a href="mailto:philippe.houdry@inist.fr">Philippe.Houdry@inist.fr</a></address>
  </body>
</html>