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:42] cyrille [Introduction : Les différents types de commandes Linux] |
atelier:chantier:les-commandes-du-shell [02/08/2021 19:27] vv222 Échappement des "--" pour éviter leur transformation par DokuWiki |
||
---|---|---|---|
Ligne 19: | Ligne 19: | ||
__Usage__ | __Usage__ | ||
- | <code user>type commande | + | <code user> |
+ | type commande | ||
type -t commande | type -t commande | ||
- | type -a commande</code> | + | type -a commande |
+ | </code> | ||
Généralement, on en distingue 5. | Généralement, on en distingue 5. | ||
Ligne 33: | Ligne 35: | ||
//**Ces commandes primitives ne génèrent pas de nouveaux processus, contrairement aux commandes externes.**// | //**Ces commandes primitives ne génèrent pas de nouveaux processus, contrairement aux commandes externes.**// | ||
- | Pour avoir de l'aide quant à ces commandes, il faut, **//généralement//**, passer par **help** et non par **man**. | + | Pour avoir de l'aide quant à ces commandes, il faut passer par **<nowiki>--</nowiki>help** si il n'y a d'entrée dans **man**. |
On trouve les commandes : set, cut, cd, true, false, test, exec, echo, pwd... | On trouve les commandes : set, cut, cd, true, false, test, exec, echo, pwd... | ||
Par exemple : | Par exemple : | ||
- | <code user>type -a cd echo pwd true | + | <code user> |
+ | type -a cd echo pwd true | ||
+ | </code> | ||
+ | <code> | ||
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 56: | Ligne 61: | ||
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** ou passer le paramètre **--help** à la commande. | + | Pour accéder à l'aide de ces commandes, il faut passer par la commande **man** ou passer le paramètre **<nowiki>--</nowiki>help** à la commande. |
Par exemple : | Par exemple : | ||
- | <code user>type -a mv cp rm | + | <code user> |
+ | type -a mv cp rm | ||
+ | </code> | ||
+ | <code> | ||
mv est /usr/bin/mv | mv est /usr/bin/mv | ||
mv est /bin/mv | mv est /bin/mv | ||
Ligne 65: | Ligne 73: | ||
cp est /bin/cp | cp est /bin/cp | ||
rm est /usr/bin/rm | rm est /usr/bin/rm | ||
- | rm est /bin/rm</code> | + | rm est /bin/rm |
+ | </code> | ||
Ligne 71: | Ligne 80: | ||
==== 3. Les alias ==== | ==== 3. Les alias ==== | ||
Les alias sont des raccourcis de commandes ou de groupes de commandes fastidieuses à saisir en raison de leur longueur ou de leurs options. | Les alias sont des raccourcis de commandes ou de groupes de commandes fastidieuses à saisir en raison de leur longueur ou de leurs options. | ||
- | En utilisant un alias, ces commandes sont plus simples à retenir puisque limitées à un mot unique | + | En utilisant un alias, ces commandes sont plus simples à retenir puisque limitées à un mot unique. |
Exemple d'alias : | Exemple d'alias : | ||
- | <code user>alias monipv6='curl '\''https://api64.ipify.org?format=json'\'''</code> | + | <code user> |
+ | alias monipv6='curl "https://api64.ipify.org?format=json"' | ||
+ | </code> | ||
Les alias sont permanents s'ils ont été définis soit dans le fichier .bashrc soit dans le fichier .bash_aliases (si .bashrc contient une entrée vers ce fichier). | Les alias sont permanents s'ils ont été définis soit dans le fichier .bashrc soit dans le fichier .bash_aliases (si .bashrc contient une entrée vers ce fichier). | ||
Par exemple | Par exemple | ||
- | <code user>type -a ls | + | <code user> |
+ | type -a ls | ||
+ | </code> | ||
+ | <code> | ||
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 | ||
ls est /bin/ls | ls est /bin/ls | ||
- | $ type -a monipv6 | + | </code> |
- | monipv6 est un alias vers « curl 'https://api64.ipify.org?format=json' »</code> | + | <code user> |
+ | type -a monipv6 | ||
+ | </code> | ||
+ | <code> | ||
+ | monipv6 est un alias vers « curl "https://api64.ipify.org?format=json" » | ||
+ | </code> | ||
Ligne 93: | Ligne 112: | ||
<code user> | <code user> | ||
type -a mp3CoverTag | type -a mp3CoverTag | ||
+ | </code> | ||
+ | <code> | ||
mp3CoverTag est une fonction | mp3CoverTag est une fonction | ||
mp3CoverTag () | mp3CoverTag () | ||
Ligne 100: | Ligne 121: | ||
eyeD3 --add-image "cover.jpg:FRONT_COVER" "$file"; | eyeD3 --add-image "cover.jpg:FRONT_COVER" "$file"; | ||
done | done | ||
- | }</code> | + | } |
+ | </code> | ||
Ligne 107: | Ligne 129: | ||
<code user> | <code user> | ||
- | type -t if else then | + | type -a if else then |
- | keyword | + | </code> |
- | keyword | + | <code> |
- | keyword</code> | + | if est un mot-clé du shell |
+ | else est un mot-clé du shell | ||
+ | then est un mot-clé du shell | ||
+ | </code> | ||
===== Conclusion ===== | ===== Conclusion ===== | ||
- | Voici un aperçu rapide de la nature des commandes que l'on peut trouver dans un système Linux. A côté de ces commandes, on peut également trouver des méta caractères, ou globs ou patterns mais ceux ci ne seront pas abordés ici. | + | Voici un aperçu rapide de la nature des commandes que l'on peut trouver dans un système Linux. A côté de ces commandes, on peut également trouver des méta caractères, ou globs ou patterns mais ceux-ci ne seront pas abordés ici. |