> Formations > Technologies numériques > Systèmes d'exploitation > Linux, Unix, macOS > Formation Écriture de scripts en Shell sous Unix/Linux
Formation incontournable

Formation : Écriture de scripts en Shell sous Unix/Linux

Écriture de scripts en Shell sous Unix/Linux

Télécharger au format pdf Partager cette formation par e-mail 2


Le shell est à la fois un langage et un programme dont nous vous présentons ici le comportement détaillé afin de maîtriser sa programmation. Ce cours vous permettra d'acquérir une véritable autonomie dans l'écriture de scripts en shell dans des domaines d'applications concrets (surveillance, automatisation, installation logicielle, traitement des fichiers...).


Inter
Intra
Sur mesure

Cours pratique en présentiel ou en classe à distance

Réf. SHL
Prix : 2030 € H.T.
  3j - 21h00




Le shell est à la fois un langage et un programme dont nous vous présentons ici le comportement détaillé afin de maîtriser sa programmation. Ce cours vous permettra d'acquérir une véritable autonomie dans l'écriture de scripts en shell dans des domaines d'applications concrets (surveillance, automatisation, installation logicielle, traitement des fichiers...).

Objectifs pédagogiques
À l’issue de la formation, le participant sera en mesure de :
  • Connaître les différentes instructions utilisables dans un script shell
  • Ecrire des scripts simples d'exploitation Unix/Linux
  • Effectuer le debugging d'un script shell
  • Enrichir un script shell avec des fonctions et sous-shells
  • Manipuler les fichiers avec les commandes grep, find, sed, awk

Public concerné
Développeurs, techniciens et administrateurs Unix/Linux.

Prérequis
Connaissances de base d'un système Linux/Unix et de la programmation. Expérience souhaitable de l'utilisation d'un de ces systèmes.
Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant  ce test.

Programme de la formation

Présentation et rappels

  • Les différents interpréteurs : Bourne Shell, Korn Shell, Bash, C Shell,Tcsh...
  • Disponibilité des interpréteurs sur les divers systèmes Unix.
  • Le point sur la normalisation (impacts sur l'écriture des scripts).
  • Les apports GNU (gawk, gsed...).
  • Différences Bourne Shell/Korn Shell/Bash.

Programmation par scripts

  • Outils de développement.
  • Mécanisme d'exécution des scripts.
  • Règles de recherche des commandes.
  • Principes d'exécution d'une commande (exec, pipeline, sous-shell, background...).
  • Principes d'exécution d'un script.

Mécanismes de base

  • Lecture et analyse de la ligne de commande.
  • Expansion des accolades, développement du tilde, remplacement des paramètres.
  • Substitution des commandes et évaluation arithmétique.
  • Procédés d'échappement (banalisation).
  • Les redirections (entrée et sortie standard, fichiers, tubes, document en ligne).

Fonctionnement en interactif

  • Invocation du shell (options).
  • Les différents fichiers de démarrage.
  • Notions d'environnement (variables, alias, fonctions).
  • Historique et rappel des commandes.
  • Contrôle de jobs.
  • La complémentation des noms.
  • Terminaison du shell.

Construction de shell-scripts portables (ksh/bash)

  • Interface avec un shell-script.
  • Structuration d'un shell-script. Notions de sous-shell.
  • Appel d'un shell : les différentes méthodes. Options utilisables. Compléments sur l'environnement. Options et arguments.
  • Préambule du shell-script : qui interprète le shell-script ? Commentaires.
  • Paramètres de position (initialisation, sauvegarde, décalages).
  • Variables locales. Variables globales.
  • Déclaration et visibilité des fonctions.
  • Sortie du shell-script. Fonction de sortie. Conventions utilisées. Valeur de retour. Enchaînement de shell-scripts.
  • Structures de contrôle du shell : commandes simples, pipelines, listes de pipelines.
  • Commandes composées, sous-shells et fonctions. Mécanismes de sélection et d'itération. Menus.
  • Entrées/sorties. Interactions avec le système. Arguments en ligne de commande.
  • Opérations de tests. Compléments sur les instructions. Redirection locale dans les fichiers de commande.

Robustesse, debugging

  • Robustesse d'un shell-script : vérifier l'initialisation des variables.
  • Gestion avancée des arguments en ligne de commande (getopts).
  • Tests sur le type des variables (expr). La commande eval.
  • Gestion des signaux.
  • Nommage et destruction des fichiers temporaires.
  • Cas particulier d'exécution d'un shell-script par cron (la crontab).
  • Debugging d'un shell-script : commandes de debugging.
  • Signaux de trace. Journalisation.
  • Journalisation.

Extensions du Korn Shell et Bash

  • Tableaux de variables.
  • Notations spécifiques.
  • Opérations arithmétiques.
  • Les alias suivis.
  • Notion de coprocessus.
  • Les commandes internes spécifiques.

Outils supplémentaires (grep, find, sed, awk)

  • Outils d'assistance pour la création de scripts : grep et find.
  • Expressions rationnelles : outil grep.
  • Recherche et traitement de fichiers : outil find.
  • Sed : principes et aspects des scripts. Commandes simples de recherche, remplacement, insertion.
  • Manipulation de flux de texte avec sed. Aperçu des commandes avancées.
  • Eléments généraux de programmation avec awk. Utilisation des variables et des fonctions.
  • Exemples complets de scripts awk (statistiques système, calculs...).
  • Présentation des fonctions intégrées awk : mathématique, traitement de chaîne, interaction avec le système...


Modalités pratiques
Travaux pratiques
Différents exercices (simples et complexes) seront réalisés pour acquérir une véritable autonomie dans l'écriture de scripts en shell.

Modalités d'évaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de QCM, mises en situation, travaux pratiques…
Le participant complète également un test de positionnement en amont et en aval pour valider les compétences acquises.

Avis clients
4,3 / 5
Les avis clients sont issus des évaluations de fin de formation. La note est calculée à partir de l’ensemble des évaluations datant de moins de 12 mois. Seules celles avec un commentaire textuel sont affichées.
CHRISTOPHE B.
15/04/24
5 / 5

Une formation intéressante et suffisamment rythmée qui pour garder le fils conducteur. Elle répondait bien au besoin de maintenance de scripts shell. Merci à Jean-François pour sa bonne humeur quotidienne.
CHRISTOPHE M.
15/04/24
4 / 5

Très bien mais court en temps
ACOSTA EDUARDO V.
15/04/24
3 / 5

La documentation n’était pas à jour et les pages sur le "support de cours" manquaient de numérotation, créant une perte de temps sur quelque chose d’aussi basique. Les exercices ne sont pas adaptés aux différents niveaux de connaissances des participants à la formation.




Dates et lieux
Sélectionnez votre lieu ou optez pour la classe à distance puis choisissez votre date.
Classe à distance