Skip to main content
Gust Training
Unix - Linux - macOS

Formation Écriture de script en Shell

Description de la formation shell Objectif Formation Shell : Le shell est le programme auquel nous soumettons nos instructions quand nous

Duration
3 Jours
Level
Fondamental
Formats
On site · Online · Blended

Course objectives

Objectif opérationnel :

Écrire des commandes et programmer en Shell.

Objectifs pédagogiques :

  • Comprendre les mécanismes de substituions du shell ($, `, ‘, *, \, etc.)
  • Lancer un shell (PATH, filiation, exec, fork, &, |, ;, etc.)
  • Maîtriser les structures de contrôles (if, while, …)
  • Programmer et debugger un shellscript
  • Maîtriser les expressions régulières
  • Utiliser les outils sed et awk dans des shellscripts
  • Faire le lien entre les concepts et outils présentés dans cette formation avec les besoins du quotidien des développeurs de shellscripts

Who is this course for?

Ce cours s’adresse aux informaticiens chargés de développer des shell-scripts, mais aussi aux correspondants informatiques ayant la responsabilité de grosses applications et aux responsables système ou d’exploitation.

Prerequisites

Les participants à ce stage doivent avoir une formation de base à l’utilisation d’un système UNIX/Linux.

Programme

Présentation et rappels

  • Principes Les différents interpréteurs : Bourne Shell, Korn Shell, Bash, C Shell.,Tcsh… Disponibilité des interpréteurs sur les divers systèmes. 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…)

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 standards, 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.

Appel d’un shell-script

  • Rappels sur les différentes méthodes. Options utilisables. Notions de sous-shell. 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.

Postambule et retour de shell-script

  • 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, et listes de pipelines Commandes composées, sous-shells et fonctions Mécanismes de sélection et d’itération Menus

Commandes internes et externes

  • 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

Mécanismes complémentaires

Debugging d’un shell-script

  • Commandes de debugging. Signaux de trace. Journalisation.

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). Gestion des signaux

Autres points

  • Nommage et destruction des fichiers temporaires. Cas particulier d’exécution d’un shell-script par cron. La commande eval Le bêtisier du shell.

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

Outils d’assistance pour la création de scripts

  • Utilitaires système SUSv3 Expression rationnelles : outil grep Recherche et traitement de fichiers : outil find

Manipulation de flux de texte avec sed

  • Principes et aspects des scripts. Commandes simples de recherche, remplacement, insertion. Aperçu des commandes avancées (traitement multiligne, mémoire secondaire…)

Automatisation de tâches avec awk

  • Éléments généraux de programmation avec awk. Utilisation des variables et des fonctions Présentation des fonctions intégrées : mathématique, traitement de chaîne, interaction avec le système… Exemples complets de scripts Awk (statistiques système, calculs…)

Description de la formation shell

Objectif Formation Shell : Le shell est le programme auquel nous soumettons nos instructions quand nous dialoguons avec un système d’exploitation, soit à travers une simple commande tapée au clavier, soit à travers des fichiers appelés shellscripts. Son fonctionnement et sa batterie de caractères spéciaux (*, [, &, #, ‘,(,|, \, « , $, ;, !, etc.) le rendrent très puissant (mais pas très lisible au début), d’autant plus qu’il est programmable (if, while, fonction, etc.).
Cette formation présente les mécanismes détaillés du fonctionnement du shell standard sous Linux (bash), puis de sa programmation. Vous serez ainsi totalement à l’aise quand vous taperez des commandes complexes.
Surtout, vous serez autonome dans la programmation de shellscripts dans des domaines d’applications du quotidien : surveillance des ressources du système, occupation des filesystems, processus consommateurs, connexions en cours, déclenchement d’alertes, génération de ses propres journaux sous forme texte ou HTML pour publication Web, envoi de mails ou de SMS, transfert de fichiers automatisés, etc.

Topics: Script Unix - Linux

Unix - Linux - macOS

Formation Unix prise en main

Description de la formation unix Initiation Bien que très populaire, Unix rebute parfois les administrateurs système à cause de son

Duration
3 Jours
Formats
On site · Online · Blended
Level
Fondamental

Unix - Linux - macOS

Formation Unix Perfectionnement

Description de la formation Unix perfectionnement Orienté vers l'utilisation performante et sécurisée du système Unix, ce cours vous

Duration
3 Jours
Formats
On site · Online · Blended
Level
Fondamental

Unix - Linux - macOS

Formation Unix, Maitriser Unix

Objectifs de la formation Objectif opérationnel :   Objectifs pédagogiques : Permettre aux participants d'accéder à une réelle

Duration
4 Jours
Formats
On site · Online · Blended
Level
Fondamental

Unix - Linux - macOS

Formation Unix, Maitriser Unix

Objectifs de la formation Unix Objectifs pédagogiques : Permettre aux participants d'accéder à une réelle maîtrise du système

Duration
4 Jours
Formats
On site · Online · Blended
Level
Fondamental
Chat on WhatsApp