Les experts Abilitic vous accompagnent dans le choix et la mise en œuvre de solutions informatiques fiables, sécurisées et adaptées à vos besoins


  • Catégorie Formations

    Le scripting shell en environnement Linux et Unix

    Le shell (ou coquille en anglais) vient « entourer » le noyau (kernel) pour permettre d’interagir avec ce dernier. Utilisé au travers du console texte, on peut écrire ses commandes, ligne par ligne ou essayer d’automatiser cette série de commande en écrivant un script shell.
    Nous vous proposons d’apprendre à programmer des scripts shell utiles et efficaces.

    Réf.

    SHELI

    Objectifs

    A l’issue de cette formation, le stagiaire sera en mesure de :
    • Connaître les différentes instructions utilisables dans un script shell
    • Écrire des scripts simples d’exploitation Unix/Linux
    • Dépanner les dysfonctionnement 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

    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.

    Les points forts d'Abilitic

    XXX

    Méthodes et moyens pédagogiques

    XXX

    Durée

    3j - 21h

    Prochaines sessions

    XXX

    Programme

    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…

    Conditions d'accès à la formation

    XXX

    Accessiblité aux personnes handicapées

    XXX

    Modalités pédagogiques et effectif

    XXX

    Tarif H.T.

    XXX

    Lieu de formation


    XXX

    Encadrement pédagogique

    XXX

    Supports

    XXX

    Evaluation de l'apprentissage

    XXX

    Formateur référent

    Jean-Jacques BUI

    Reconnaissance

    XXX

    Evaluation de la satisfaction

    XXX

    Contact technique, pédagogique, administratif et financier

    XXX