Différences
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 | ||
tutoriel:script_shell [Le 17/11/2019, 10:09] 196.227.136.160 [Méthode graphique] |
tutoriel:script_shell [Le 12/06/2020, 13:28] bcag2 [Méthode dans un terminal] |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
====== Introduction aux scripts shell ====== | ====== Introduction aux scripts shell ====== | ||
- | Un script shell permet d'automatiser une série d'opérations. Il se présente sous la forme d'un fichier contenant une ou plusieurs commandes qui seront exécutées de manière séquentielle. | + | Un script s |
- | <code> | + | |
- | #!/bin/bash | + | |
- | # This script will take an animated GIF and delete every other frame | + | |
- | # Accepts two parameters: input file and output file | + | |
- | # Usage: ./<scriptfilename> input.gif output.gif | + | |
# Make a copy of the file | # Make a copy of the file | ||
cp $1 $2 | cp $1 $2 | ||
Ligne 69: | Ligne 63: | ||
Cette commande chez moi donnait initialement : | Cette commande chez moi donnait initialement : | ||
/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games | /usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games | ||
- | + | ntion, ce répertoire s'appelle **bin** et se place dans votre répertoire personnel. Si votre répertoire personnel est /home/toto, ce répertoire sera donc **/home/toto/bin**. | |
- | C'est à dire que le shell va aller voir si la définition de la commande tapée ("ls" pour continuer sur le même exemple) se trouve dans **/usr/local/bin** puis dans **/usr/bin**... jusqu'à ce qu'il la trouve. | + | |
- | + | ||
- | Ajouter un répertoire au PATH peut donc être très pratique. Par convention, ce répertoire s'appelle **bin** et se place dans votre répertoire personnel. Si votre répertoire personnel est /home/toto, ce répertoire sera donc **/home/toto/bin**. | + | |
Pour pouvoir utiliser mes scripts en tapant directement leur nom (sans le "./") depuis n'importe quel répertoire de mon ordinateur, il me suffit d'indiquer au shell de chercher aussi dans ce nouveau dossier en l'ajoutant au PATH. | Pour pouvoir utiliser mes scripts en tapant directement leur nom (sans le "./") depuis n'importe quel répertoire de mon ordinateur, il me suffit d'indiquer au shell de chercher aussi dans ce nouveau dossier en l'ajoutant au PATH. | ||
Pour ceci, il suffit de faire : | Pour ceci, il suffit de faire : | ||
Ligne 93: | Ligne 84: | ||
* [[wpfr>Debian_Almquist_shell|dash]] (//Debian Almquist shell//) : shell plus léger que bash, installé par défaut sur Ubuntu ; | * [[wpfr>Debian_Almquist_shell|dash]] (//Debian Almquist shell//) : shell plus léger que bash, installé par défaut sur Ubuntu ; | ||
- | * bash (//Bourne Again SHell//) : conçu par le projet GNU, shell linux ; le shell par défaut sur Ubuntu ; | + | * [[:bash]] (//Bourne Again SHell//) : conçu par le projet GNU, shell linux ; le shell par défaut sur Ubuntu ; |
* rbash : un shell restreint basé sur bash. Il existe de nombreuses variantes de bash ; | * rbash : un shell restreint basé sur bash. Il existe de nombreuses variantes de bash ; | ||
* csh, tcsh : shells C, créés par Bill Joy de Berkeley ; | * csh, tcsh : shells C, créés par Bill Joy de Berkeley ; |