====== Liste de petits scripts écrits en "bash" ====== * [[/Article/|Les articles]] * [[/Contact/]] === Rappel sur la console === La console est l'endroit où un utilisateur peut entrer des commandes. Le plus simple pour ouvrir un nouvelle console est d'appuyer sur les touches ** ** ! ++++ Une commande est en général du type : | action argument_1 argument_2 ... argument_n "**action**" est ce pourquoi on passe la commande "argument_1 argument_2 ... argument_n" est un liste non obligatoire de paramètres que l'on peut passer à l'action pour son exécution, leur nombre est quelconque. Exemples : ls cette commande liste tous éléments contenus dans le dossier courant (fichiers,dossiers,raccourcis,etc...) echo "bonjour le monde" cette commande fait appel à la commande //**echo**// qui permet dans ce cas particulier, d'afficher le message "bonjour le monde" ++++ ++++ Il existe également un autre un autre type de commande : les déclarations | Le cas le plus simple est celui des données prenom="Jean" nom="Dupont" echo "Bonjour $nom $prenom" Dans cet exemple est déclaré, dans un premier temps, une donnée nommé **prenom**. Au moment de cette déclaration le système va allouer un espace mémoire suffisant pour y mémoriser "Jean".\\ De la même façon le système alloue un espace mémoire suffisant pour y mémoriser "Dupont" à la donnée **nom** la commande **echo** permet d'afficher tout ce qui lui est passé en argument sans réfléchir ou presque... chaque fois que dans une expression on rencontre le caractère $ on le substitue par ce qui suit immédiatement. La substitution est opérée dans la commande echo "Bonjour $nom $prenom" lors de son exécution, $**nom** y sera substitué (remplacé) par "Dupont" la valeur contenu de la donnée nommée **nom**, de même **$prenom** y sera substitué par "Jean". __Remarque IMPORTANTE :__ **A chaque déclaration d'une donnée dans un contexte, un bloc mémoire lui est alloué par le système d'exploitation de la machine et ce bloc sera restitué à ce système lors de la fin d'utilisation de cette donnée dans son contexte.** Par exemple, si l'on ouvre une console et que l'on y déclarent des données, celles ci existeront tant que la console restera ouverte et à la fermeture de cette console toutes ces données disparaîtront. **Les données déclarées dans un contexte non de sens que dans ce contexte.** ++++ === Les scripts === ++++ Définition d'un script "bash" | Sous Linux il existe plusieurs façons d'exécuter des commandes, chacune de ces façons se fait au travers d'un langage de programmation qui à ses règles propres. Dans cet article nous aborderons que le "**bash**" Classiquement un programme contient des instructions compréhensibles directement par le processeur de la machine où il s'exécute. Un script est une sorte de programme qui est une liste d'instructions écrites selon un langage compréhensible par le programmeur lors de son élaboration. A chaque fois que l'on veut exécuter un script, le texte des instructions est soumis à un "interpréteur" du langage utilisé.\\ L'interpréteur est toujours indiqué sur la première ligne du script. Lors de l'exécution d'un script par une machine, son système d'exploitation (Linux) lit la première ligne et soumet ensuite le texte de ce script au bon interprétateur, dans notre cas **bash**. L'exécution d'un script est toujours réalisée par l'interpréteur qui exécute scrupuleusement les instructions contenu dans le fichier du script dans l'ordre où elles y sont déclarées. ++++ ++++ Bonjour le monde | #! /bin/bash #--------------------------------------------------- echo "Bonjour le monde !" exit 0 Par convention sous Linux, tout programme se termine en indiquant un numéro d'erreur. Ce numéro peut ainsi est récupéré lors de la fin d'un programme par par celui qui la lancé permettant ainsi de créer des automatismes. * 0 est la valeur pour une fin "normale" du programme lancé, toute autre valeur numérique positive est possible * En **bash**, exit est le mot réservé pour arrêter volontairement un programme, dans notre exemple il est suivi par 0 pour indiquer que tout c'est bien passé :-) ++++ ++++ Bon à savoir pour la suite... | Dans la suite de ce tutoriel vous allez être amené(e) à tester sur votre machine les exemples, plus précisément dans une console que vous pouvez lancer par les touches ** **. Quand vous avez ouvert votre console, vous vous trouvez dans le dossier qui vous est alloué, créez y un dossier **bin** pour y loger vos scripts grâce à la commande mkdir bin Il est possible que le dossier existe déjà et que le système vous l'indique alors ;-) ++++