Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
elearning:workbooks:centos:8:utilisateur:l105 [2021/06/23 10:41] adminelearning:workbooks:centos:8:utilisateur:l105 [2024/04/28 15:11] (Version actuelle) admin
Ligne 1: Ligne 1:
 ~~PDF:LANDSCAPE~~ ~~PDF:LANDSCAPE~~
  
-Version : **2021.01**+Version : **2024.01**
  
 Dernière mise-à-jour : ~~LASTMOD~~ Dernière mise-à-jour : ~~LASTMOD~~
Ligne 12: Ligne 12:
     * Contenu du Module     * Contenu du Module
     * Le Shell     * Le Shell
-    * Le Shell /bin/bash +    * LAB #1 - Le Shell /bin/bash 
-      * Les Commandes Internes et Externes au shell +      * 1.1 - Les Commandes Internes et Externes au shell 
-      * Les alias +      * 1.2 - Les alias 
-      * Le Prompt +      * 1.3 - Définir le Shell d'un Utilisateur 
-      * Rappeler des Commandes +      * 1.4 - Le Prompt 
-      * Générer les fins de noms de fichiers +      * 1.5 - Rappeler des Commandes 
-      * Le shell interactif+      * 1.6 - Générer les fins de noms de fichiers 
 +      * 1.7 - Le shell interactif
         * Caractère *         * Caractère *
         * Caractère ?         * Caractère ?
         * Caractères [ ]         * Caractères [ ]
-      * L'option extglob+      * 1.8 - L'option extglob
         * ?(expression)         * ?(expression)
         * *(expression)         * *(expression)
Ligne 28: Ligne 29:
         * @(expression)         * @(expression)
         * !(expression)         * !(expression)
-      * Caractères d'Échappement +        * Caractères d'Échappement 
-    * Codes Retour +    * 1.9 - Codes Retour 
-    * Redirections +    * 1.10 - Redirections 
-    * Pipes +    * 1.11 - Pipes 
-    * Substitutions de Commandes +    * 1.12 - Substitutions de Commandes 
-    * Chaînage de Commandes +    * 1.13 - Chaînage de Commandes 
-    * Affichage des variables du shell+    * 1.14 - Affichage des variables du shell
       * Les variables principales       * Les variables principales
       * Les Variables de Régionalisation et d'Internationalisation       * Les Variables de Régionalisation et d'Internationalisation
       * Les variables spéciales       * Les variables spéciales
-    * La Commande env +    * 1.15 - La Commande env 
-    * Options du Shell Bash+    * 1.16 - Options du Shell Bash
       * Exemples       * Exemples
         * noclobber         * noclobber
         * noglob         * noglob
         * nounset         * nounset
-    * Les Scripts Shell +    * LAB #2 - Les Scripts Shell 
-      * Exécution +      * 2.1 - Exécution 
-      * La commande read+      * 2.2 - La commande read
         * Code de retour         * Code de retour
         * La variable IFS         * La variable IFS
-      * La commande test+      * 2.3 - La commande test
         * Tests de Fichiers         * Tests de Fichiers
         * Tests de chaînes de caractère         * Tests de chaînes de caractère
Ligne 55: Ligne 56:
         * Les opérateurs         * Les opérateurs
         * Tests d'environnement utilisateur         * Tests d'environnement utilisateur
-      * La commande %%[[ expression ]]%% +      * 2.4 - La commande %%[[ expression ]]%% 
-      * Opérateurs du shell +      * 2.5 - Opérateurs du shell 
-      * L'arithmétique+      * 2.6 - L'arithmétique
         * La commande expr         * La commande expr
           * Opérateurs Arithmétiques           * Opérateurs Arithmétiques
Ligne 67: Ligne 68:
           * Opérateurs Logiques           * Opérateurs Logiques
           * Opérateurs travaillant sur les bits           * Opérateurs travaillant sur les bits
-        * Structures de contrôle +      2.7 - Structures de contrôle 
-          * If +        * If 
-          * case +        * case 
-            * Exemple+          * Exemple
         * Boucles         * Boucles
           * for           * for
           * while           * while
           * Exemple           * Exemple
-      * Scripts de Démarrage +      * 2.8 - Scripts de Démarrage 
-        * LAB #1- Scripts de Démarrage +        * ~/.bash_profile 
-          * ~/.bash_profile +        * ~/.bashrc
-          * ~/.bashrc+
  
 =====Le Shell===== =====Le Shell=====
Ligne 102: Ligne 102:
 </code> </code>
  
-=====Le Shell /bin/bash=====+=====LAB #1 - Le Shell /bin/bash=====
  
 Ce module concerne l'utilisation du shell **bash** sous Linux. Le shell **bash** permet de: Ce module concerne l'utilisation du shell **bash** sous Linux. Le shell **bash** permet de:
Ligne 121: Ligne 121:
   - Les commandes externes au shell   - Les commandes externes au shell
  
-====Les Commandes Internes et Externes au shell====+====1.1 - Les Commandes Internes et Externes au shell====
  
 Les commandes internes au shell sont des commandes telles **cd**. Pour vérifier le type de commande, il faut utiliser la commande **type** : Les commandes internes au shell sont des commandes telles **cd**. Pour vérifier le type de commande, il faut utiliser la commande **type** :
Ligne 137: Ligne 137:
 </code> </code>
  
-====Les alias====+====1.2 - Les alias====
  
 Les alias sont des noms permettant de désigner une commande ou une suite de commandes et ne sont spécifiques qu'au shell qui les a créés ainsi qu'à l'environnement de l'utilisateur : Les alias sont des noms permettant de désigner une commande ou une suite de commandes et ne sont spécifiques qu'au shell qui les a créés ainsi qu'à l'environnement de l'utilisateur :
Ligne 205: Ligne 205:
 aac  abc  bca  xyz aac  abc  bca  xyz
 </code> </code>
 +
 +====1.3 - Définir le Shell d'un Utilisateur====
  
 Le shell des utilisateurs est défini par **root** dans le dernier champs du fichier **/etc/passwd** : Le shell des utilisateurs est défini par **root** dans le dernier champs du fichier **/etc/passwd** :
Ligne 316: Ligne 318:
 </WRAP> </WRAP>
  
-====Le Prompt====+====1.4 - Le Prompt====
  
 Le prompt d'un utilisateur dépend de son statut : Le prompt d'un utilisateur dépend de son statut :
Ligne 323: Ligne 325:
   * **#** pour root.   * **#** pour root.
  
-==== Rappeler des Commandes ====+====1.5 - Rappeler des Commandes ====
  
 Le shell **/bin/bash** permet le rappel des dernières commandes saisies. Afin de connaître la liste des commandes mémorisées, utilisez la commande history : Le shell **/bin/bash** permet le rappel des dernières commandes saisies. Afin de connaître la liste des commandes mémorisées, utilisez la commande history :
Ligne 435: Ligne 437:
 </WRAP> </WRAP>
  
-====Générer les fins de noms de fichiers====+====1.6 - Générer les fins de noms de fichiers====
  
 Le shell /bin/bash permet la génération des fins de noms de fichiers. Celle-ci est accomplie grâce à l'utilisation de la touche **[Tab]**. Dans l'exemple qui suit, la commande saisie est : Le shell /bin/bash permet la génération des fins de noms de fichiers. Celle-ci est accomplie grâce à l'utilisation de la touche **[Tab]**. Dans l'exemple qui suit, la commande saisie est :
Ligne 464: Ligne 466:
 </code> </code>
  
-==== Le shell interactif ====+====1.7 - Le shell interactif ====
  
 Lors de l'utilisation du shell, nous avons souvent besoin d'exécuter une commande sur plusieurs fichiers au lieu de les traiter individuellement. A cette fin nous pouvons utiliser les caractères spéciaux.  Lors de l'utilisation du shell, nous avons souvent besoin d'exécuter une commande sur plusieurs fichiers au lieu de les traiter individuellement. A cette fin nous pouvons utiliser les caractères spéciaux. 
Ligne 584: Ligne 586:
 </WRAP> </WRAP>
  
-====L'option extglob====+====1.8 - L'option extglob====
  
 Activez l'option **extglob** du shell bash afin de pouvoir utiliser **?(expression), *(expression), +(expression), @(expression) et !(expression)** : Activez l'option **extglob** du shell bash afin de pouvoir utiliser **?(expression), *(expression), +(expression), @(expression) et !(expression)** :
Ligne 741: Ligne 743:
 </code> </code>
  
-====Codes Retour====+====1.9 - Codes Retour====
  
 Chaque commande retourne un code à la fin de son exécution. La variable spéciale **$?** sert à stocker le code retour de la dernière commande exécutée. Chaque commande retourne un code à la fin de son exécution. La variable spéciale **$?** sert à stocker le code retour de la dernière commande exécutée.
Ligne 767: Ligne 769:
 Si le code retour est **autre que zéro** la dernière commande s'est déroulée avec une erreur.  Si le code retour est **autre que zéro** la dernière commande s'est déroulée avec une erreur. 
  
-====Redirections====+====1.10 - Redirections====
  
 Votre dialogue avec le système Linux utilise des canaux d’entrée et de sortie. On appelle le clavier, le **canal d’entrée standard** et l’écran, le **canal de sortie standard** :  Votre dialogue avec le système Linux utilise des canaux d’entrée et de sortie. On appelle le clavier, le **canal d’entrée standard** et l’écran, le **canal de sortie standard** : 
Ligne 862: Ligne 864:
 | %%<>%% | Permet d'utiliser le fichier specifié en tant que entrée standard et sortie standard |  | %%<>%% | Permet d'utiliser le fichier specifié en tant que entrée standard et sortie standard | 
  
-====Pipes====+====1.11 - Pipes====
  
 Il est aussi possible de relier des commandes avec un pipe **|** .  Il est aussi possible de relier des commandes avec un pipe **|** . 
Ligne 902: Ligne 904:
 </WRAP> </WRAP>
  
-====Substitutions de Commandes====+====1.12 - Substitutions de Commandes====
  
 Il est parfois intéressant, notamment dans les scripts, de remplacer une commande par sa valeur de sa sortie. Afin d'illustrer ce point, considérons les commandes suivantes : Il est parfois intéressant, notamment dans les scripts, de remplacer une commande par sa valeur de sa sortie. Afin d'illustrer ce point, considérons les commandes suivantes :
Ligne 919: Ligne 921:
 </WRAP> </WRAP>
  
-====Chainage de Commandes====+====1.13 - Chainage de Commandes====
  
 Il est possible de regrouper des commandes à l’aide d’un sous-shell : Il est possible de regrouper des commandes à l’aide d’un sous-shell :
Ligne 945: Ligne 947:
 Dans ce cas, Commande2 est exécuté si Commande1 a rencontré une erreur. Dans ce cas, Commande2 est exécuté si Commande1 a rencontré une erreur.
  
-==== Affichage des variables du shell====+====1.14 - Affichage des variables du shell====
  
 Une variable du shell peut être affichée grâce à la commande : Une variable du shell peut être affichée grâce à la commande :
Ligne 1056: Ligne 1058:
 | $@ | Contient l'ensemble des arguments passés au script | | $@ | Contient l'ensemble des arguments passés au script |
  
-====La Commande env====+====1.15 - La Commande env====
  
 La commande **env** envoie sur la sortie standard les valeurs des variables système de l'environnement de l'utilisateur qui l'invoque : La commande **env** envoie sur la sortie standard les valeurs des variables système de l'environnement de l'utilisateur qui l'invoque :
Ligne 1098: Ligne 1100:
   $ env EDITOR=vim xterm   $ env EDITOR=vim xterm
  
-====Options du Shell Bash====+====1.16 - Options du Shell Bash====
  
 Pour visualiser les options du shell bash, il convient d'utiliser la commande **set** : Pour visualiser les options du shell bash, il convient d'utiliser la commande **set** :
Ligne 1222: Ligne 1224:
 </WRAP> </WRAP>
  
-===== Les Scripts Shell =====+===== LAB #2 - Les Scripts Shell =====
  
 Le but de la suite de cette unité est de vous amener au point où vous êtes capable de comprendre et de déchiffrer les scripts, notamment les scripts de démarrage ainsi que les scripts de contrôle des services.  Le but de la suite de cette unité est de vous amener au point où vous êtes capable de comprendre et de déchiffrer les scripts, notamment les scripts de démarrage ainsi que les scripts de contrôle des services. 
Ligne 1228: Ligne 1230:
 Écrire des scripts compliqués est en dehors de la portée de cette unité car il nécessite une approche programmation qui ne peut être adressée que lors d'une formation dédiée à l'écriture des scripts. Écrire des scripts compliqués est en dehors de la portée de cette unité car il nécessite une approche programmation qui ne peut être adressée que lors d'une formation dédiée à l'écriture des scripts.
  
-==== Exécution ====+==== 2.1 - Exécution ====
  
 Un script shell est un fichier dont le contenu est lu en entrée standard par le shell. Le contenu du fichier est lu et exécuté d'une manière séquentielle. Afin qu'un script soit exécuté, il suffit qu'il puisse être lu au quel cas le script est exécuté par un shell fils soit en l'appelant en argument à l'appel du shell : Un script shell est un fichier dont le contenu est lu en entrée standard par le shell. Le contenu du fichier est lu et exécuté d'une manière séquentielle. Afin qu'un script soit exécuté, il suffit qu'il puisse être lu au quel cas le script est exécuté par un shell fils soit en l'appelant en argument à l'appel du shell :
Ligne 1379: Ligne 1381:
 </WRAP> </WRAP>
  
-====La commande read====+====2.2 - La commande read====
  
 La commande **read** lit son entrée standard et affecte les mots saisis dans la ou les variable(s) passée(s) en argument. La séparation entre le contenu des variables est l'espace. Par conséquent il est intéressant de noter les exemples suivants : La commande **read** lit son entrée standard et affecte les mots saisis dans la ou les variable(s) passée(s) en argument. La séparation entre le contenu des variables est l'espace. Par conséquent il est intéressant de noter les exemples suivants :
Ligne 1489: Ligne 1491:
 </code> </code>
  
-====La commande test====+====2.3 - La commande test====
  
 La commande **test** peut être utilisée avec deux syntaxes : La commande **test** peut être utilisée avec deux syntaxes :
Ligne 1650: Ligne 1652:
 </code> </code>
  
-====La commande [[ expression ]]====+====2.4 - La commande [[ expression ]]====
  
 La commande **%%[[%%<key>espace</key>expression<key>espace</key>%%]]%%** est une amélioration de la commande **test**. Les opérateurs de la commande test sont compatibles avec la commande %%[[ expression ]]%% sauf **-a** et **-o** qui sont remplacés par **&&** et **%%||%%** respectivement : La commande **%%[[%%<key>espace</key>expression<key>espace</key>%%]]%%** est une amélioration de la commande **test**. Les opérateurs de la commande test sont compatibles avec la commande %%[[ expression ]]%% sauf **-a** et **-o** qui sont remplacés par **&&** et **%%||%%** respectivement :
Ligne 1676: Ligne 1678:
 </code> </code>
  
-====Opérateurs du shell====+====2.5 - Opérateurs du shell====
  
 ^ Opérateur ^ Description ^ ^ Opérateur ^ Description ^
Ligne 1689: Ligne 1691:
 </code> </code>
  
-====L'arithmétique====+====2.6 - L'arithmétique====
  
 ===La commande expr=== ===La commande expr===
Ligne 1825: Ligne 1827:
 </code> </code>
  
-====Structures de contrôle====+====2.7 - Structures de contrôle====
  
 ===If=== ===If===
Ligne 1949: Ligne 1951:
 </WRAP> </WRAP>
  
-====Boucles====+====2.8 - Boucles====
  
 ===for=== ===for===
Ligne 1987: Ligne 1989:
 </file> </file>
  
-====Scripts de Démarrage====+====2.8 - Scripts de Démarrage====
  
 Quand Bash est appelé en tant que shell de connexion, il exécute des scripts de démarrage dans l'ordre suivant : Quand Bash est appelé en tant que shell de connexion, il exécute des scripts de démarrage dans l'ordre suivant :
Ligne 1999: Ligne 2001:
  
 Quand bash est appelé en tant que shell interactif qui n'est pas un shell de connexion, il exécute le script **~/.bashrc**. Quand bash est appelé en tant que shell interactif qui n'est pas un shell de connexion, il exécute le script **~/.bashrc**.
- 
-====LAB #1- Scripts de Démarrage==== 
  
 <WRAP center round important 60%> <WRAP center round important 60%>
Ligne 2042: Ligne 2042:
  
 ----- -----
-<html> +Copyright © 2024 Hugh Norris.
-<div align="center"> +
-Copyright © 2021 Hugh Norris. +
-</html>+
Menu