« Utilisateur:Robin Millette/Intro à la ligne de commande » : différence entre les versions

Combiner des commandes
(S'orienter)
(Combiner des commandes)
 
Ligne 40 : Ligne 40 :


= Types de commandes CLI =
= Types de commandes CLI =
== Interne (à bash) ou externe (qu'on trouve dans un fichier sur le disque) ==
Chaque shell (bash) a ses commandes internes. Dans bash, on peut taper "help" pour les voir. cd par exemple est une fonction interne et de plus, elle ne pourrait être implémenter de façon externe puisqu'elle est intimmenent lié au shell courant (on change le chemin du shell courant, ni plus ni moins).
Certains commandes, comme test et echo, existent à la fois dans le shell et sur le disque, et peuvent comporter des options différentes.
* Faites echo --help dans bash, ça va écrite "--help". Bon.
* Maintenant faisont which echo pour connaitre le chemin du premier exécutable trouver (selon $PATH) et puis voyons la différence. Sur mon ordi (et en général), /bin/echo --help et maintenant, nous obtenons l'aide de la commande externe. Pour l'aide sur la commande interne echo, help echo.


== Types d'interfaces ==
== Types d'interfaces ==
Ligne 79 : Ligne 87 :
* find parcours les disques pour trouver un fichier et lui faire quelque chose (plus long, selon la taille des disques)
* find parcours les disques pour trouver un fichier et lui faire quelque chose (plus long, selon la taille des disques)


= Combiner des commandes =
* # indique un commentaire, jusqu'à la fin de la ligne
* cp a b & # copie un gros fichier a dans b et retourner au prompt sans attendre la fin de l'exécution; taper jobs pour voir le processus de copie; taper fg pour ramener le processus de copie en foreground; faites CTRL-z pour suspendre la copie puis bg pour la repartir en background (comme si on l'avait lancée avec & comme initialement).
* cp a b && echo réussi # copie a dans b et seulement si la commande réussi (retourne 0), écrit "réussi"
* cp a b || echo échec # copie a dans b et seulement si la commande échoue (retourne autre que 0), écrit "échec".
Notes que ce ne sont pas toutes les commandes qui retourne 0 ou autre chose en cas d'erreur ou de succès.
== scripts shell ==
On peut combiner un ensemble de commandes dans un script, pour facilement exécuter notre petit programme.




598

modifications