<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é équivalent à 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é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ère session de TP est de
préparer votre environnement de travail en même
temps que de réviser rapidement quelques notions de
base.
</p>
<h3>Préparation de votre environnement de travail</h3>
<ul>
<li>
Créez les répertoires
<code>Formation</code> et <code>Formation/UnixShell</code> sous votre <code>home
directory</code> (avec contrôle du contenu des
répertoires à chaque é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éplacez-vous dans le répertoire
<code>UnixShell</code> en une étape et vérifiez le ré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écupé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 > historique.txt</td></tr>
</table>
</div>
</li>
<li>
Affichez à l'é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ères lignes du fichier historique
de deux façons :
<ul>
<li>
avec une redirection en entrée de la commande
approprié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 < historique.txt</td></tr>
</table>
</div>
</li>
<li>
avec un pipe pour enchaîner les deux commandes
approprié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>