tuteurs.ens.fr/unix/shell/index.tml

131 lines
4.2 KiB
Text
Raw Normal View History

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html
PUBLIC "-//ENS/Tuteurs//DTD TML 1//EN"
"tuteurs://DTD/tml.dtd">
<html>
<head>
<title>Shell</title>
</head>
<body>
<h1>Le shell</h1>
<h2>Qu'est-ce que le shell&nbsp;?</h2>
<p>
Le <strong>shell</strong> est le programme que vous utilisez
r<EFBFBD>guli<EFBFBD>rement sur les machines Unix de l'ENS (que ce soient les Sun, les
PC sous FreeBSD ou autres d<>riv<69>s d'Unix), et qui <strong>interpr<70>te les
commandes</strong>. Par exemple, vous y tapez <code>pine</code> ou
<code>mutt</code>, <code>forum</code>, <code>cc</code>,
<code>mozilla</code>, etc. Le shell est ce programme qui attend vos
instructions et vous dit quelque chose comme&nbsp;:
</p>
<pre><span class="prompt">clipper ~ $</span></pre>
<h3>La coquille magique</h3>
<p>
Le mot <em>shell</em> signifie <20>&nbsp;coquille&nbsp;<3B> en anglais. Mais
quel rapport avec une coquille&nbsp;? Eh bien, dans une coquille vous
pouvez mettre de l'eau, pour la porter ensuite <20> votre bouche&nbsp;;
vous pouvez y mettre du sable avant de le verser dans des bocaux&nbsp;;
en somme, une coquille est un r<>cipient qui permet de manipuler toutes
sortes de contenus. Il en va de m<>me du shell. C'est un outil en mode
texte qui permet l'exploitation d'un grand nombre de ressources de
l'ordinateur.
</p>
<h3>Les usages du shell</h3>
<p>
Ces pages vous donneront les rudiments pour exploiter les deux
principales fonctionnalit<69>s du shell&nbsp;:
</p>
<ul>
2005-09-08 01:00:03 +02:00
<li> l'usage interactif, reposant sur les <a
href="commande.html"><strong>lignes de
commandes</strong></a>&nbsp;;</li>
<li> la conception de <a href="script.html"><strong>scripts</strong></a>
(programmes <20>crits en shell). </li>
</ul>
2005-09-08 01:00:03 +02:00
<p>
Ces deux usages du shell sont tout <20> fait compl<70>mentaires. Pour une
utilisation quotidienne, il est important de conna<6E>tre quelques bases de
l'utilisation du shell en ligne de commande&nbsp;; et l'<27>criture de
scripts shell permet de personnaliser son syst<73>me en automatisant des
t<EFBFBD>ches r<>p<EFBFBD>titives et fastidieuses.
</p>
<p>
Par ailleurs, la programmation en shell fournit un excellent marche-pied
pour apprendre la programmation. C'est un langage simple, qui permet
d'arriver rapidement <20> des r<>sultats visibles.
</p>
<p>
Les pages que nous consacrons ici <20> l'apprentissage du shell vous
apprendront <20> manipuler cet outil pr<70>cieux et puissant. Elles
sont accessibles <20> des d<>butants, m<>me s'ils n'ont aucune connaissance
pr<EFBFBD>alable avanc<6E>e en informatique, ni m<>me en math<74>matiques&nbsp;; elles
sont accessibles <20> ceux qui ont une formation litt<74>raire.
</p>
<h2>Le shell en ligne de commande</h2>
<p>Si vous souhaitez utiliser le shell en ligne de commandes, nous vous
recommandons en priorit<69> la lecture des pages suivantes&nbsp;:</p>
<ul>
2005-09-08 01:00:03 +02:00
<li> <a href="presentation.html">pr<70>sentation g<>n<EFBFBD>rale du
shell</a>&nbsp;: qu'est-ce que le shell&nbsp;? Comment
l'utiliser&nbsp;?</li>
<li> <a href="commande.html">le shell en ligne de commande</a>&nbsp;:
2005-09-08 01:00:03 +02:00
les bases de l'utilisation du shell en ligne de commande&nbsp;;</li>
<li> <a href="variable.html">les variables</a>&nbsp;: comment cr<63>er,
lire et manipuler des variables avec le shell.</li>
</ul>
<h2>Programmer des scripts shell</h2>
<p>Si vous souhaitez apprendre <20> programmer en shell (<28>crire des
scripts), alors nous vous conseillons de lire <20>galement&nbsp;:</p>
<ul>
<li> <a href="script.html">programmation de scripts en shell</a>&nbsp;:
2005-09-08 01:00:03 +02:00
<EFBFBD>crivez vos premiers programmes en shell&nbsp;;</li>
2005-07-05 09:18:06 +02:00
<li> <a href="entreesortie.html">entr<74>e, sortie,
2005-09-08 01:00:03 +02:00
redirection</a>&nbsp;: faire interagir les <20>l<EFBFBD>ments du shell pour
construire des programmes <20>volu<6C>s&nbsp;;</li>
2005-07-05 09:18:06 +02:00
2005-09-08 01:00:03 +02:00
<li> <a href="test.html">test et calcul arithm<68>tique</a>&nbsp;:
manipuler les valeurs de vrai et de faux pour orienter le parcours d'un
programme&nbsp;;</li>
2005-07-05 09:18:06 +02:00
<li> <a href="boucle.html">boucles et structures de
2005-09-08 01:00:03 +02:00
contr<EFBFBD>le</a>&nbsp;: ma<6D>triser l'aiguillage d'un programme&nbsp;;</li>
2005-09-08 01:00:03 +02:00
<li> <a href="fonction.html">d<>finir et appeler des fonctions</a>&nbsp;:
all<EFBFBD>ger ses programmes et am<61>liorer leur qualit<69> en les concevant d'une
fa<EFBFBD>on modulaire.</li>
2005-07-05 09:18:06 +02:00
</ul>
<div class="metainformation">
Bas<EFBFBD> sur un polycopi<70> de Roberto Di Cosmo, Xavier Leroy et Damien
Doligez.
Modifications&nbsp;: Nicolas George, Baptiste M<>l<EFBFBD>s.
2005-09-08 01:00:03 +02:00
Derni<EFBFBD>re modification le <date value="$Date: 2005-09-07 23:00:04 $"
/>.
</div>
</body>
</html>