Cours Shell Unix Commandes & Programmation
Cours Shell Unix Apparition des premiers clones Unix comme Linux et FreeBSD. ... Par défaut avec nohup (sous sh bash et ksh) les canaux de sortie et ...
Programmation système - Shell et Commandes UNIX
Shell Script shell Fichiers d'initialisation. Programmation syst`eme bash. Version améliorée de sh et csh. Fourni le plus souvent avec Linux. Zero Shell.
Scripts shell
Plan du cours. 1. Le shell : l'image générale. 2. Scripts shell : les bases bash : Bourne Again Shell. ? le shell par défaut sous la plupart de ...
Le shell Principales commandes
Le shell UNIX standard est sh. Nous n'étudierons que lui cette année. Bash supplante de plus en plus souvent sh (c'est le cas sur Linux).
Le shell bash
27 juil. 2015 Le Bourne-Again Shell (bash). ? Dans ce cours nous étudions le shell en mode texte bash. En mode texte car permet d'écrire des scripts !
Guide avancé décriture des scripts Bash: Une exploration en
26 déc. 2007 Guide avancé d'écriture des scripts Bash: Une exploration en profondeur de l'art de la programmation shell. Mendel Cooper. 5.1.04.
FORMATUX : Shell Bash
24 sept. 2019 L'idée de fournir aux stagiaires un support en PDF reprenant la totalité des cours dispensés pour leur permettre de réviser et approfondir les ...
LA PROGRAMMATION SHELL
Les scripts shell. Volume Horaire : Cours : 3 heures. TD : 1 heure 30 mn. 3.1 Introduction. Le shell est l'interface Homme/Machine des systèmes UNIX/LINUX.
Initiation `a Unix Cours 2 - Programmation Shell
Programmation shell: combinaison de commandes au sein d'un script dans le but d'automatiser certains tâches. ? Un Script shell correspond `a un fichier
Shells Linux et Unix par la pratique
20 déc. 2013 Programmation système en C sous Linux. ... Pourquoi écrire un script shell ? ... cours d'exécution sans lancer de nouvelle instance.
[PDF] Scripts shell
Plan du cours 1 Le shell : l'image générale 2 Scripts shell : les bases 3 Structures de contrôle 4 Tableaux 5 Fonctions
[PDF] Cours Shell Unix Commandes & Programmation - X-Files
Cours Shell Unix 4 2 1 fichiers ordinaires (ordinary files) Par défaut avec nohup (sous sh bash et ksh) les canaux de sortie et d'erreur standards
[PDF] Shell Bash - Supports formatux
24 sept 2019 · L'idée de fournir aux stagiaires un support en PDF reprenant la totalité des cours dispensés pour leur permettre de réviser et approfondir
[PDF] Initiation `a Unix Cours 2 - Programmation Shell - Université dOrléans
Initiation `a Unix Cours 2 - Programmation Shell Université Henri Poincaré Master Génomique et Informatique Automne 2008 1 / 25
[PDF] Le shell Principales commandes - IGM
Bash supplante de plus en plus souvent sh (c'est le cas sur Linux) Il consiste en un mélange de sh de quelques fonctions du csh et d'autres du Korn shell (
Cours Linux Shell Bash Niveau débutant
Shell bash – niveau débutant introduction les distributions cours linux shell bash niveau débutant pdf actuelles de gnu/linux offrent à l'utilisateur un
Supports de cours gratuit sur script shell - pdf - BestCours
Support de cours PDF à télécharger gratuitement sur les commandes de base pour le système Unix-Linux Shell et architecture support de formation en 77p Taille
[PDF] Scripts shell - fnac-staticcom
Scripts shell Programmez sous Unix/Linux (sh ksh bash) Exercices et corrigés 174 QCM 80 travaux pratiques et leurs corrigés
Programmation Shell Linux cours à télécharger en pdf - CoursPDFnet
Télécharger cours Interpréteurs de commandes Shell pour les Systèmes d'exploitation Linux fichier PDF gratuit - fichier de type pdf et de taille 89 64 Ko
[PDF] Programmation Shell Lignes de commandes et - limsi
Dans le cadre du cours utilisation d'un UNIX : Linux mod`ele format etc ) Gedit (gedit) scripts shell qui exécute la suite de commandes
Comment écrire un script shell sur Linux ?
Script Shell (bash, zsh, ksh, dash,…), pour lire un fichier texte, ligne par ligne : read-file.sh. #variable du fichier fichier="test.
FORMATUXShell Bash
Antoine Le Morvan, Xavier Sauvignon
Version 2.0.2 du 24 septembre 2019
Table des matières
Préface. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Crédits. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
L'histoire de Formatux. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Licence. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Comment contribuer au projet ?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Antora. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Gestion des versions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
1. Les scripts shell - Niveau 1. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.1. Premier script. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.2. Variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3. Saisie et manipulations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Tester vos connaissances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2. Les scripts shell - Instructions de contrôle. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.1. Les tests. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2. Structures conditionnelles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.3. Boucles. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Tester vos connaissances. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
3. TP Scripting shell. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.1. Étude du besoin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3.2. Consignes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.3. Pistes de travail. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.4. Proposition de correction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
Glossaire. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Le scripting BASH sous LINUX.
Dans cette partie, vous allez pouvoir vous initier au scripting Bash, exercice que tout administrateur devra réaliser un jour ou l'autre. Un TP Final vous est proposé avec des pistes de réalisation.FORMATUX : Shell Bash | 1
Préface
GNU/Linux est un système d'exploitation libre fonctionnant sur la base d'un noyau Linux,également appelé kernel Linux.
Linux est une implémentation libre du système UNIX et respecte les spécifications POSIX.GNU/Linux est généralement distribué dans un ensemble cohérent de logiciels, assemblés autour
du noyau Linux et prêt à être installé. Cet ensemble porte le nom de "Distribution". •La plus ancienne des distributions est la distribution Slackware.•Les plus connues et utilisées sont les distributions Debian, RedHat et Arch, et servent de base
pour d'autres distributions comme Ubuntu, CentOS, Fedora, Mageia ou Manjaro.Chaque distribution présente des particularités et peut être développée pour répondre à des
besoins très précis : •services d'infrastructure ; •pare-feu ; •serveur multimédia ; •serveur de stockage ; •etc.La distribution présentée dans ces pages est principalement la CentOS, qui est le pendant gratuit de
la distribution RedHat, mais la plupart des supports s'appliquent généralement aussi à Ubuntu et
Debian. La distribution CentOS est particulièrement adaptée pour un usage sur des serveurs d'entreprises.Crédits
Ce support de cours a été rédigé sur plusieurs années par de nombreux formateurs. Les formateurs à l'origine du projet et contributeurs principaux actuels : •Antoine Le Morvan ; •Xavier Sauvignon ; Notre relecteur principal des premières versions : •Patrick Finet ;Il a rédigé la partie Git :
•Carl Chenet2 | Préface
Ils ont contribués à la rédaction :
•Nicolas Kovacs : Apache sous CentOS7 ; •Damien Dubédat : Scripting shell ;Enfin, les illustrations de qualité sont dessinées pour formatux par François Muller (aka Founet).
L'histoire de Formatux
Nous étions (Xavier, Antoine et Patrick) tous les trois formateurs dans la même école de formation
pour adulte.L'idée de fournir aux stagiaires un support en PDF reprenant la totalité des cours dispensés pour
leur permettre de réviser et approfondir les points vus en classe pendant la journée nous a rapidement paru être une priorité.En décembre 2015, nous testions les solutions qui existaient pour rédiger un support d'une telle
taille, et nous avons retenu dès le début du projet le format Asciidoc pour sa simplicité et le
générateur Asciidoctor pour la qualité du support généré, la possibilité de personnaliser le rendu
mais surtout pour l'étendue de ses fonctionnalités. Nous avons également testé le markdown, mais
avons été plus rapidement limité. nous ne regrettons absolument pas le choix technique d'Asciidoc.La gestion des sources a été confiée dès l'année suivante à la forge Gitlab de Framagit, ce qui nous
permettait de travailler à plusieurs en même temps sur le support, et de faciliter la relecture du
support par Patrick. En découvrant la CI de gitlab-ci, nous avions enfin la stack qui nous permettrait d'automatiser totalement la génération du support. Il ne nous manquait plus que la génération d'un site web depuis ces mêmes sources.Le travail de rédaction étant fortement personnel, sachant que nous risquions d'être muté
rapidement dans les années à suivre, nous avons voulu ce support sous Licence Libre, afin qu'un
maximum de personnes puissent à la fois contribuer et en profiter, et que notre beau support ne se
perde pas.Même après avoir tous quitté notre organisme de formation, nous avons continué à faire vivre le
projet formatux, en faisant évoluer certaines parties, en nous appuyant sur d'autres pour nos formations et en intégrant de nouvelles parties, comme la partie Git de Carl Chenet.En juillet 2019, nous (Xavier et Antoine, Patrick ayant pris sa retraite informatique) avons décidé de
reprendre le développement de Formatux plus activement et d'en faire un peu plus sa promotion.L'organisation complète du support a été revue, en le scindant en 8 dépôts disctincts, correspondant
à chacune des parties, au support global ainsi qu'au site web. Nous avons voulu notre organisation
full devops, afin que la génération de chacune des parties soient totalement automatisées et inter-
Préface | 3
dépendantes les unes des autres.Il est difficile aujourd'hui d'évaluer la popularité de notre support. Ce dernier a longtemps été
disponible en téléchargement par torrent sur freetorrent (malheureusement aujourd'hui disparu) et en direct depuis le site web. Nous n'avons pas de métriques et nous n'en voulons pas particulièrement. Nous retirons notre satisfaction dans les contacts que nous avons avec nos lecteurs.Licence
Formatux propose des supports de cours Linux à destination des formateurs ou des personnes désireuses d'apprendre à administrer un système Linux en autodidacte. Les supports de Formatux sont publiés sous licence Creative Commons-BY-SA et sous licence ArtLibre. Vous êtes ainsi libre de copier, de diffuser et de transformer librement les oeuvres dans le
respect des droits de l'auteur. BY : Paternité. Vous devez citer le nom de l'auteur original. SA : Partage des Conditions Initiales à l'Identique. •Licence Creative Commons-BY-SA : https://creativecommons.org/licenses/by-sa/3.0/fr/ •Licence Art Libre : http://artlibre.org/ Les documents de Formatux et leurs sources sont librement téléchargeables sur formatux.fr : •https://www.formatux.fr/ Les sources de nos supports sont hébergés chez Framasoft sur leur forge Framagit. Vous y trouverez les dépôts des codes sources à l'origine de la version de ce document : •https://framagit.org/formatux/A partir des sources, vous pouvez générer votre support de formation personnalisé. Nous vous
recommandons le logiciel AsciidocFX téléchargeable ici : http://asciidocfx.com/ ou l'éditeur Atom
avec les plugins Asciidoc.Comment contribuer au projet ?
Si vous voulez participer à la rédaction des supports formatux, forkez-nous sur framagit.org. Vous pourrez ensuite apporter vos modifications, compiler votre support personnalisé et nous proposer vos modifications.Vous êtes les bienvenus pour :
•Compléter le document avec un nouveau chapitre,4 | Préface
•Corriger ou compléter les chapitres existants, •Relire le document et corriger l'orthographe, la mise en forme, •Promouvoir le projetDe votre côté
1.Créer un compte sur https://framagit.org,
2.Créer un fork du projet que vous voulez modifier parmi la liste des projets du groupe : Créer le
fork,3.Créer une branche nommée develop/[Description],
◦Où [Description] est une description très courte de ce qui va être fait.4.Faire des commits dans votre branche,
5.Pusher la branche sur votre fork,
6.Demander une merge request.
toujours lire la partie Git de notre support puis nous contacter. Nous vous guiderons ensuite pour vos premiers pas. Cette remarque est également vraie pour le format Asciidoc.Essayer de conserver le même ton qui est déjà employé dans le reste du support (pas de 'je' ni de
smileys par exemple).La suite se passe de notre côté
1.Quelqu'un relira votre travail,
◦Essayez de rendre ce travail plus facile en organisant vos commits.2.S'il y a des remarques sur le travail, le relecteur fera des commentaires sur la merge request,
3.Si la merge request lui semble correcte il peut merger votre travail avec la branche develop.
Corrections suite à une relecture
La relecture de la merge request peut vous amener à faire des corrections. Vous pouvez faire ces corrections dans votre branche, ce qui aura pour effet de les ajouter à la merge request.Comment compiler mon support formatux ?
Après avoir forké notre projet ou l'avoir cloné (git clone https://framagit.org/group/formatux-
PARTIEXX.git), déplacez-vous dans le dossier formatux-PARTIEXX nouvellement créé.Vous avez ensuite plusieurs possibilités :
Préface | 5
•Vous utilisez le logiciel AsciiDocFX ou Atom avec ses plugins Asciidoc (recommandé sous Windows) : lancez le logiciel, ouvrez le fichier .adoc désiré, et cliquez sur le bouton PDF (AsciidoctorFX) ou regardez la prévisualisation (Atom).•Vous êtes sous Linux et vous avez déjà installé le paquet asciidoctor : exécutez la commande
asciidoctor-pdf -t -D public -o support.pdf support.adoc.Comment faire un don
Vous pouvez faire un don par paypal pour soutenir nos efforts. Ces dons serviront à payer notrenom de domaine et notre hébergement. Nous pourrons également reverser une partie de ces dons à
Framasoft, qui héberge gracieusement nos repos et met à disposition un runner qui compile nossupports et notre site web. Enfin, une petite bière entre nous peut également être au programme.
Accès à la cagnotte paypal : https://www.paypal.com/pools/c/8hlM1Affp1.Nous contacter
Nous sommes disponibles sur gitter pour échanger autour de formatux, de Linux et de la formation : https://gitter.im/formatux-fr/formatux.Antora
Pour la génération de notre site web, nous utilisons Antora. Antora nous permet, depuis les mêmes
sources, de pouvoir générer le support en PDF et le site web statique en HTML. Le développement
d'Antora est sponsorisé par OpenDevise Inc.Gestion des versions
Table 1. Historique des versions du document
VersionDateObservations
1.0Avril 2017Version initiale.
2.0Septembre 2019Passage à antora
2.0.1Septembre 2019Relecture du module Shell Niveau 1
Contribution de Damien Dubédat.
6 | Préface
Chapitre 1. Les scripts shell - Niveau 1
Objectifs pédagogiquesDans ce chapitre, vous allez apprendre à rédiger votre premier script, à utiliser des variables
et également à interagir avec les utilisateurs. Rédiger son premier script en bash ; Utiliser des variables ; Interagir avec un utilisateur ; Transformer le contenu d'un fichier ou d'une variable ; Gérer les arguments d'un script.
script, shell, bash Connaissances : Niveau technique : Temps de lecture : 20 minutes Le shell est l'interpréteur de commandes de Linux. C'est un binaire qui ne fait pas partie du noyau, mais forme une couche supplémentaire, d'où son nom de "coquille". Il analyse les commandes saisies par l'utilisateur puis les fait exécuter par le système.Il existe plusieurs shells, tous partageant des points communs. L'utilisateur est libre d'utiliser celui
qui lui convient le mieux parmi (entre autres) : •le Bourne-Again shell (bash), •le Korn shell (ksh), •le C shell (csh), •etc.Le bash est présent par défaut sur les principales distributions Linux. Il se caractérise par ses
fonctionnalités pratiques et conviviales. Le shell est aussi un langage de programmation basique qui, grâce à quelques commandes dédiées, permet : •l'utilisation de variables, •l'exécution conditionnelle de commandes, •la répétition de commandes.Les scripts en shell ont l'avantage d'être réalisables rapidement et de manière fiable, sans
compilation ni installation de commandes supplémentaires. Un script shell n'est qu'un fichierChapitre 1. Les scripts shell - Niveau 1 | 7
texte sans enluminures (gras, italique, etc.). très puissant et parfois plus rapide qu'un mauvais code compilé. Si vous n'en êtes pas convaincu, vous pouvez lire, même s'il commence à dater, l'article suivant : Entretien avec un débutant en bash de Étienne Dublé. Cela vous permettra de réfléchir à votre façon de coder.Pour écrire un script shell, il suffit de réunir dans un même fichier texte toutes les commandes
nécessaires. En rendant ce fichier exécutable, le shell le lira séquentiellement et exécutera une à
une les commandes le comportant. Il est aussi possible de l'exécuter en passant le nom du script comme un argument au binaire bash. Lorsque le shell rencontre une erreur, il affiche un message permettant d'identifier le problèmemais continue l'exécution du script. Mais il existe des mécaniques pour stopper l'exécution d'un
script en cas de survenance d'une erreur. Les erreurs propres aux commandes sont également affichées à l'écran ou à l'intérieur de fichiers.Qu'est ce qu'un bon script ? C'est un script :
•fiable : son fonctionnement est irréprochable même en cas de mauvaise utilisation ;•commenté : son code est annoté pour en faciliter la relecture et les futures évolutions ;
•lisible : le code est indenté à bon escient, les commandes sont aérées, ...•portable : le code fonctionne sur tout système Linux, gestion des dépendances, gestion des
droits, etc.1.1. Premier script
Pour commencer l'écriture d'un script shell, il est pratique d'utiliser un éditeur de texte gérant la
coloration syntaxique. vim, par exemple, est un outil adapté à cela. Le nom du script devra respecter quelques règles : •pas de nom de commandes existantes ;•ne contenant que des caractères alphanumériques, c'est-à-dire pas de caractère accentué ni
d'espace ; •extension en .sh pour indiquer qu'il s'agit d'un script shell.8 | Chapitre 1. Les scripts shell - Niveau 1
hello-world.sh1 #!/usr/bin/env bash
2 #3 # Auteur : Antoine Le Morvan
4 # Date : Janvier 2019
5 # Version 1.0.0 : Affiche le texte "Hello world !"
6 # 78 # Affiche un texte à l'écran :
9 echo "Hello world !"
Pour pouvoir exécuter ce script, en argument du bash : $ bash hello-world.shHello world !
Ou, plus simplement, après lui avoir donné le droit d'exécution : $ chmod u+x ./hello-world.sh $ ./hello-world.shHello world !
Notez que pour exécuter le script, celui-ci a été appelé avec " ./ » avant son nom.
L'interpréteur pourra refuser d'exécuter un script présent dans le répertoire courant sans indiquer un chemin (ici avec le " ./ » devant). La commande chmod n'est à passer qu'une seule fois sur un script nouvellement créé.La première ligne à écrire dans tout script permet d'indiquer le nom du binaire du shell à utiliser
pour l'exécuter. Si vous désirez utiliser le shell ksh ou le langage interprété python, vous
remplaceriez la ligne : #!/usr/bin/env bash par : #!/usr/bin/env ksh ou par : #!/usr/bin/env pythonChapitre 1. Les scripts shell - Niveau 1 | 9
Tout au long de l'écriture, il faudra penser à la relecture du script en utilisant notamment des
commentaires :•une présentation générale, en début, pour indiquer le but du script, son auteur, sa version, son
utilisation, etc. •au cours du texte pour aider à la compréhension des actions.Les commentaires peuvent être placés sur une ligne à part ou bien à la fin d'une ligne contenant
une commande.Exemple :
# Ce programme affiche la date date # Cette ligne est la ligne qui affiche la date !1.2. Variables
Comme dans tout langage de programmation, le script shell utilise des variables. Elles servent à stocker des informations en mémoire pour les réutiliser à volonté au cours du script.Une variable est créée au moment où elle reçoit son contenu. Elle reste valide jusqu'à la fin de
l'exécution du script ou à la demande explicite de l'auteur du script. Puisque le script est exécuté
séquentiellement du début à la fin, il est impossible de faire appel à une variable avant qu'elle ne
soit créée.Le contenu d'une variable peut être modifié au cours du script, la variable continue d'exister. Si le
contenu est supprimé, la variable reste active mais ne contient rien. La notion de type de variable en script shell est possible mais est très peu utilisée. Le contenu d'une variable est toujours un caractère ou une chaîne de caractères.10 | Chapitre 1. Les scripts shell - Niveau 1
01-backup.sh
1 #!/usr/bin/env bash
2 3 #4 # Auteur : Antoine Le Morvan
5 # Date : Janvier 2019
6 # Version 1.0.0 : Sauvegarde dans /root les fichiers passwd, shadow, group et
gshadow 7 # 89 # Variables globales
10 FICHIER1=/etc/passwd
11 FICHIER2=/etc/shadow
12 FICHIER3=/etc/group
13 FICHIER4=/etc/gshadow
1415 # Dossier destination
16 DESTINATION=/root
1718 # Nettoie l'écran :
19 clear
2021 # Lancer la sauvegarde
22 echo "La sauvegarde de $FICHIER1, $FICHIER2, $FICHIER3, $FICHIER4 vers $DESTINATION
va commencer :" 2324 cp $FICHIER1 $FICHIER2 $FICHIER3 $FICHIER4 $DESTINATION
2526 echo "La sauvegarde est terminée !"
Ce script fait usage de variables. Le nom d'une variable doit commencer par une lettre mais peut ensuite contenir n'importe quelle suite de lettres ou de chiffres. Hormis le tiret bas " _ », les caractères spéciaux ne sont pas utilisables.Par convention, les variables créées par un utilisateur ont un nom en minuscules. Ce nom doit être
choisi avec précaution pour n'être ni trop évasif ni trop compliqué. Une variable peut toutefois être
nommée avec des majuscules, comme c'est le cas ici, s'il s'agit d'une variable globale qui ne doit pas
être modifiée par le programme.
Le caractère " = » affecte du contenu à une variable : variable=valeur nom_rep="/home" Il n'y a pas d'espace ni avant ni après le signe =.Chapitre 1. Les scripts shell - Niveau 1 | 11
Pour afficher du texte en même temps que le contenu d'une variable, il est obligatoire d'utiliser les
guillemets et non les apostrophes. $ message="Bonjour" $ echo "Voici le contenu de la variable message : $message"Voici le contenu de la variable message : Bonjour
$ echo 'Voici le contenu de la variable message : $message' Voici le contenu de la variable message : $message Pour isoler le nom de la variable, il faut utiliser les apostrophes ou les accolades : $ fichier=nom_fichier $ touch "$fichier"1 $ touch ${fichier}1Supprimer et verrouiller les variables
La commande unset permet de supprimer une variable.Exemple :
$ nom="NOM" $ prenom="Prenom" $ echo "$nom $prenom"NOM Prenom
$ unset prenom $ echo "$nom $prenom" NOM La commande readonly ou typeset -r verrouille une variable.Exemple :
$ nom="NOM" $ readonly nom $ nom="AUTRE NOM" bash: nom: variable en lecture seulequotesdbs_dbs45.pdfusesText_45[PDF] cours bash pdf
[PDF] incipit la peste bac francais
[PDF] programmation shell linux
[PDF] incipit de la peste ouverture
[PDF] incipit la peste texte
[PDF] exercice corrigé programmation shell
[PDF] programmation bash pdf
[PDF] prêche du père paneloux commentaire
[PDF] diabète au maroc 2016
[PDF] note d'intention projet
[PDF] la princesse de clèves livre audio
[PDF] la princesse de clèves extrait
[PDF] princesse de montpensier lettres volées
[PDF] publicité radio