Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
atelier:chantier:les-commandes-du-shell [02/08/2021 17:31] cyrille [Les commandes du shell] |
atelier:chantier:les-commandes-du-shell [02/08/2021 17:40] cyrille [Introduction : Les différents types de commandes Linux] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Les commandes du shell ====== | + | ====== La nature des commandes du shell ====== |
* Objet : Connaître la nature des commandes du shell | * Objet : Connaître la nature des commandes du shell | ||
Ligne 7: | Ligne 7: | ||
* Suivi : {{tag>en-chantier à-tester à-placer}} | * Suivi : {{tag>en-chantier à-tester à-placer}} | ||
* Création par [[user>cyrille]] 02/08/2021 | * Création par [[user>cyrille]] 02/08/2021 | ||
- | * Commentaires sur le forum : [[:url-invalide | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME | + | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=30409 | Lien vers le forum concernant ce tuto]] ((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) |
- | ===== Introduction : Les différents type de commandes Linux===== | + | ===== Introduction : Les différents types de commandes Linux===== |
Le shell, en plus d'être un langage de programmation, est aussi un interpréteur de commandes accessible depuis la console (aussi appelé terminal). | Le shell, en plus d'être un langage de programmation, est aussi un interpréteur de commandes accessible depuis la console (aussi appelé terminal). | ||
- | On peut y rencontrer plusieurs types de commandes. | + | On peut y rencontrer des commandes de natures différentes. Pour connaître leur nature ou leur type, on utilisera la commande **type** |
+ | |||
+ | __Usage__ | ||
+ | |||
+ | <code user>type commande | ||
+ | |||
+ | type -t commande | ||
+ | |||
+ | type -a commande</code> | ||
Généralement, on en distingue 5. | Généralement, on en distingue 5. | ||
Ligne 21: | Ligne 29: | ||
==== 1. Les primitives ==== | ==== 1. Les primitives ==== | ||
- | Ce sont des commandes internes (construites dans le shell (ainsi nommées "shell builtins")), aussi appelées primitives, du shell. | + | Ce sont des commandes internes (construites dans le shell (ainsi nommées "shell builtins")), aussi appelées primitives du shell. |
Ces commandes primitives ne génèrent pas de nouveaux processus, contrairement aux autres commandes. | Ces commandes primitives ne génèrent pas de nouveaux processus, contrairement aux autres commandes. | ||
Ligne 29: | Ligne 37: | ||
Par exemple : | Par exemple : | ||
- | <code user>$ type -a cd echo pwd true | + | <code user>type -a cd echo pwd true |
cd est une primitive du shell | cd est une primitive du shell | ||
echo est une primitive du shell | echo est une primitive du shell | ||
Ligne 47: | Ligne 55: | ||
Contrairement aux commandes primitives, elles généreront un nouveau processus. | Contrairement aux commandes primitives, elles généreront un nouveau processus. | ||
- | Pour accéder à l'aide de ces commandes, il faut passer par la commande **man**. | + | Pour accéder à l'aide de ces commandes, il faut passer par la commande **man** ou passer le paramètre **--help** à la commande. |
Par exemple : | Par exemple : | ||
- | <code user>$ type -a mv cp rm | + | <code user>type -a mv cp rm |
mv est /usr/bin/mv | mv est /usr/bin/mv | ||
mv est /bin/mv | mv est /bin/mv | ||
Ligne 70: | Ligne 78: | ||
Par exemple | Par exemple | ||
- | <code user>$ type -a ls | + | <code user>type -a ls |
ls est un alias vers « ls --color=auto » | ls est un alias vers « ls --color=auto » | ||
ls est /usr/bin/ls | ls est /usr/bin/ls | ||
Ligne 83: | Ligne 91: | ||
Une fonction est une sous-routine du shell qui permet d'éviter répétitions, de diminuer les risques de bogues et d'augmenter la lisibilité du script pour un humain. | Une fonction est une sous-routine du shell qui permet d'éviter répétitions, de diminuer les risques de bogues et d'augmenter la lisibilité du script pour un humain. | ||
<code user> | <code user> | ||
- | + | type -a mp3CoverTag | |
- | $ type -a mp3CoverTag | + | |
mp3CoverTag est une fonction | mp3CoverTag est une fonction | ||
mp3CoverTag () | mp3CoverTag () | ||
Ligne 99: | Ligne 106: | ||
<code user> | <code user> | ||
- | $ type -t if else then | + | type -t if else then |
keyword | keyword | ||
keyword | keyword |