• Aide
  • Eurêkoi Eurêkoi

Livre

Shell sous Unix-Linux : apprenez à écrire des scripts pour administrer votre système

Résumé

Présentation de la programmation Shell pour les systèmes Unix et Linux. L'auteur détaille notamment des fonctionnalités compatibles avec la norme POSIX, pour optimiser, simplifier et automatiser les tâches quotidiennes. Les scripts présentés dans l'ouvrage sont accessibles en ligne. ©Electre 2018


  • Éditeur(s)
  • Date
    • cop. 2018
  • Notes
    • La couv. porte en plus : "Fichiers complémentaires à télécharger" et "Version numérique offerte ! www.editions-eni.fr"
    • La 4ème de couv. porte en plus : "Sur www.editions-eni.fr : les exemples de scripts présentés dans le livre"
    • Contient un "flashcode" permettant d'accéder à un contenu via Internet
  • Langues
    • Français
  • Description matérielle
    • 1 vol. (324 p.) : ill., tabl.; ; 22 cm
  • Collections
  • Sujet(s)
  • ISBN
    • 978-2-409-01194-8
  • Indice
    • 681.44 Systèmes d'exploitation Unix, Linux
  • Quatrième de couverture
    • Shell sous Unix/Linux

      Apprenez à écrire des scripts pour administrer votre système

      Ce livre permet aux administrateurs de systèmes Linux et Unix mais aussi aux utilisateurs avertis de se former à l'écriture de scripts Shell dans l'objectif de simplifier, optimiser et automatiser leurs tâches quotidiennes. Des connaissances de base sur Linux, voire sur l'administration d'un serveur sous Linux, sont un plus pour tirer pleinement profit de la lecture de ce livre. En raison de la compatibilité de Linux avec la norme POSIX, ce livre peut également être utile pour n'importe quel autre système de type Unix.

      Pour mieux appréhender la suite du livre, le lecteur commence par prendre connaissance des concepts de base : le rôle du Shell, les moyens de communication à la disposition des processus, les caractères spéciaux, les expressions rationnelles ou encore les droits utilisateurs...

      Les scripts Shell étant avant tout des fichiers de « texte brut » , ce livre traite ensuite la question des éditeurs de texte, en particulier de Vi, éditeur universel présent sur tous les systèmes de type Unix. Les manipulations de base sont expliquées afin d'apprendre à utiliser cet outil puissant à la logique unique.

      Une fois les connaissances de base et l'outil maîtrisés, l'auteur entre dans le vif du sujet et détaille les bases de l'écriture d'un script pour en comprendre le fonctionnement global : shebang, entrées, sorties, arguments, signaux, enchaînements et redirections, etc. Les chapitres qui suivent présentent certains concepts de programmation tels que les structures conditionnelles, les boucles et le traitement des données. Les outils indispensables que sont sed, awk et ed y sont aussi étudiés.

      L'auteur présente également un recueil de commandes, automatisables et utiles à l'administration d'un système Linux, ainsi que différents outils plus inhabituels, pouvant répondre à des besoins spécifiques. Ces deux sections peuvent servir de référence au lecteur pour retrouver rapidement les outils qui lui seront utiles.

      Enfin, le livre propose des exemples de scripts exécutables en situation réelle, mettant en oeuvre de nombreuses commandes afin de répondre à des problématiques concrètes. Ces exemples peuvent servir de source d'inspiration au lecteur pour créer des scripts spécifiques à ses besoins.

      Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.


  • Tables des matières
      • Shell sous Unix/Linux

      • Apprenez à écrire des scripts pour administrer votre système

      • Édition ENI

      • Avant-propos
      • Chapitre 1
      • Introduction
      • 1. Architecture d'un système UNIX11
      • 2. Le principe KISS12
      • 3. Mise en oeuvre de ces apprentissages13
      • Chapitre 2
      • Concepts de base
      • 1. Définition du shell15
      • 1.1 Fonction du shell16
      • 1.2 Plusieurs shells17
      • 1.3 Choix du shell18
      • 1.4 À l'écran : le prompt19
      • 1.5 Variables d'environnement20
      • 1.6 Complétion automatique22
      • 1.7 Rappel des précédentes commandes22
      • 2. Chaînes et flux23
      • 2.1 Fichiers et pseudo-fichiers23
      • 2.2 Entrées et sorties standard24
      • 3. Shell, shell script et langage24
      • 4. Chemins et caractères spéciaux26
      • 4.1 Répertoire courant, chemin relatif ou absolu26
      • 4.2 Métacaractères28
      • 5. Expressions rationnelles29
      • 5.1 Opérateurs30
      • 5.2 Groupes32
      • 5.3 Exemples32
      • 5.4 Versions33
      • 6. Utilisateurs et droits34
      • 6.1 Identifiants34
      • 6.2 Droits35
      • 6.3 Ajout de droits avec sudo38
      • Chapitre 3
      • Éditeurs de texte
      • 1. Pourquoi parler d'éditeurs de texte ?41
      • 2. Console ou interface graphique43
      • 3. Quels éditeurs ?44
      • 3.1 Les ancêtres44
      • 3.2 Les légers et rapides45
      • 3.3 Les modernes46
      • 3.4 Les poids lourds46
      • 4. Vim : performant, léger et universel47
      • 4.1 Un peu d'histoire48
      • 4.2 Les modes49
      • 4.3 Les commandes50
      • 4.3.1 Insertion de texte51
      • 4.3.2 Déplacement52
      • 4.3.3 Couper, copier et coller53
      • 4.3.4 Sélection visuelle54
      • 4.3.5 Recherche et remplacement55
      • 4.3.6 Indentations57
      • 4.3.7 Annulation57
      • 4.3.8 Répétition58
      • 4.3.9 Sortie, enregistrement, ouverture58
      • 4.3.10 Récapitulatif60
      • 4.4 Aides et extensions63
      • 4.5 Configuration63
      • 4.6 GVim, avec interface graphique65
      • 4.7 Windows, OS X et autres systèmes67
      • 5. Nano : léger et simple68
      • 5.1 Origine et histoire68
      • 5.2 Fonctionnement69
      • 6. Accès distant71
      • Chapitre 4
      • Les bases de l'écriture d'un script
      • 1. Forme générale d'un script73
      • 1.1 Nommage de fichier73
      • 1.2 Mise en forme74
      • 1.3 Commentaires75
      • 1.4 Le shebang75
      • 2. Variables et assignation77
      • 2.1 Assignation d'une valeur78
      • 2.2 Type de données78
      • 2.3 Lecture d'une valeur au clavier79
      • 2.4 Contenu d'une variable80
      • 2.5 Substitutions80
      • 2.6 Variable spécifique à une commande81
      • 2.7 Protection des contenus82
      • 2.8 Stocker des listes84
      • 2.9 Opérations arithmétiques86
      • 3. Environnement et communication88
      • 3.1 Entrée et sorties88
      • 3.2 Arguments89
      • 3.2.1 Argument simple89
      • 3.2.2 Deux variables pour tous les arguments90
      • 3.2.3 Lecture séquentielle des arguments91
      • 3.2.4 Argument non-option avec un tiret91
      • 3.3 Signaux92
      • 3.4 Variables d'environnement93
      • 4. Enchaînements et redirections95
      • 4.1 Redirections des entrées/sorties95
      • 4.1.1 Redirection de la sortie standard95
      • 4.1.2 Redirection de la sortie d'erreur96
      • 4.1.3 Redirection de l'entrée97
      • 4.1.4 Redirections et pseudo-fichiers97
      • 4.1.5 Here-document98
      • 4.1.6 Chaînage des commandes99
      • 4.1.7 Groupage des commandes100
      • 4.1.8 Dupliquer la sortie100
      • 4.1.9 Redirection de sortie avec sudo100
      • 4.2 Enchaînement de commandes101
      • 4.3 Exécution en arrière-plan102
      • 4.4 Traitement du code de retour103
      • 4.4.1 Variable du code d'erreur103
      • 4.4.2 Enchaînement conditionnel104
      • 4.4.3 Codes de retour d'un script104
      • 4.5 Appels imbriqués105
      • 4.5.1 Assignation à variable ou en argument105
      • 4.5.2 Evaluation de contenus de chaînes106
      • 5. Fonctions106
      • 5.1 Déclaration et appel107
      • 5.2 Arguments107
      • 5.3 Flux de données108
      • 5.4 Code de retour108
      • 6. Inclusion d'un autre fichier109
      • Chapitre 5
      • Structures conditionnelles et boucles
      • 1. Structures conditionnelles111
      • 1.1 Commande test111
      • 1.2 Structure conditionnelle avec if115
      • 1.3 Structure conditionnelle avec case117
      • 2. Boucles119
      • 2.1 Boucle for120
      • 2.2 Boucle sur une série de nombres122
      • 2.3 Boucle while124
      • 2.4 Lecture d'un fichier ligne par ligne125
      • 2.5 Interruption forcée127
      • Chapitre 6
      • Traitement des flux et des chaînes
      • 1. De la chaîne au flux131
      • 1.1 Utilisation d'une variable dans un flux131
      • 1.2 Limite des arguments132
      • 1.3 Fichier temporaire133
      • 1.4 Flux au lieu des arguments135
      • 2. Découpage137
      • 2.1 Couper les lignes : cut137
      • 2.2 Ignorer les espaces multiples : echo139
      • 2.3 Découper les fichiers : split141
      • 3. Filtrage143
      • 3.1 Conserver les premières lignes : head143
      • 3.2 Conserver les dernières lignes : tail144
      • 3.3 Extraire un ensemble de lignes147
      • 3.4 Inverser les données : tac et rev147
      • 3.5 Filtrer selon le contenu : grep148
      • 4. Modification151
      • 4.1 Modifier des caractères : tr151
      • 4.2 Convertir les tabulations : expand et unexpand152
      • 4.3 Raccourcir les lignes : fold153
      • 4.4 Trier les lignes : sort153
      • 4.5 Mélanger les lignes : shuf154
      • 4.6 Supprimer les doublons : uniq155
      • 4.7 Numéroter et compter : nl et wc156
      • 5. Outils évolués159
      • 5.1 sed, l'éditeur de flux159
      • 5.1.1 Adresses160
      • 5.1.2 Commandes162
      • 5.1.3 Options utiles163
      • 5.1.4 Exemple165
      • 5.2 AWK, langage de traitement de texte166
      • 5.2.1 Motifs168
      • 5.2.2 Traitement des champs170
      • 5.2.3 Variables172
      • 5.2.4 Structures conditionnelles172
      • 5.2.5 Boucles173
      • 5.2.6 Fonctions intégrées174
      • 5.2.7 Commandes et fichiers175
      • 5.2.8 Fonctions utilisateur175
      • 5.2.9 Exécution directe176
      • 5.2.10 Exemple176
      • 5.3 Ed : éditeur non visuel179
      • 5.3.1 Adressage179
      • 5.3.2 Commandes180
      • 5.3.3 Exemple183
      • Chapitre 7
      • Recueil de commandes
      • 1. Documentation/aide185
      • 1.1 Pages de manuel185
      • 1.2 Commandes GNU plus en détail187
      • 1.3 Identification des commandes188
      • 2. Gestion de fichiers188
      • 2.1 Création189
      • 2.2 Suppression191
      • 2.3 Copie, déplacement et renommage192
      • 2.4 Liste et recherche193
      • 2.5 Consultation200
      • 2.6 Droits et appartenance202
      • 2.7 Archives et compression204
      • 2.8 Détection des types de fichiers207
      • 3. Gestion des utilisateurs et groupes208
      • 3.1 Créer un utilisateur209
      • 3.2 Supprimer un utilisateur211
      • 3.3 Modifier un utilisateur212
      • 3.4 Créer un groupe214
      • 3.5 Supprimer un groupe215
      • 3.6 Modifier un groupe215
      • 3.7 Lister les utilisateurs et les groupes216
      • 4. Processus216
      • 4.1 Lister les processus217
      • 4.2 Gérer les processus224
      • 5. Disques et mémoire227
      • 5.1 Consulter les espaces disques227
      • 5.2 Consulter la mémoire vive231
      • 5.3 Manipuler les partitions231
      • 5.4 Monter et démonter235
      • 5.5 LVM239
      • 6. Système239
      • 6.1 Informations et manipulations basiques239
      • 6.2 Paquets logiciels242
      • 7. Divers243
      • 7.1 Vrai et faux, oui et non243
      • 7.2 Attente243
      • 7.3 Codage et hachage244
      • Chapitre 8
      • Automatisation
      • 1. Sortie du terminal247
      • 1.1 Détacher définitivement : nohup247
      • 1.2 Détacher et revenir : screen248
      • 1.3 Envoyer un courrier électronique : mail248
      • 2. Planification régulière249
      • 2.1 Format des tâches250
      • 2.2 Tâches utilisateurs252
      • 2.3 Tâche système253
      • 2.4 Entrées et sorties254
      • 3. Exécution ponctuelle255
      • 3.1 Programmer une tâche255
      • 3.2 Lister des tâches257
      • 3.3 Supprimer une tâche258
      • Chapitre 9
      • Pour aller plus loin...
      • 1. Exploitation avancée des arguments259
      • 1.1 Arguments fournis à getopts260
      • 1.2 Appel de getopts260
      • 2. Formatage des sorties261
      • 2.1 Couleurs261
      • 2.2 Formatage du texte264
      • 2.3 Affichage graphique265
      • 3. Droits avancés avec les ACL POSIX266
      • 4. Réseau269
      • 4.1 Bas niveau, configuration, diagnostic269
      • 4.2 Web et téléchargements275
      • 4.3 Transfert de fichiers278
      • 5. Impression et numérisation282
      • 5.1 Impression282
      • 5.2 Numérisation283
      • 6. Médias284
      • 6.1 Images284
      • 6.2 Fichiers PDF286
      • 6.3 Fichiers audio287
      • 7. Environnements de bureau288
      • 8. Autres langages290
      • Chapitre 10
      • Exemples concrets
      • 1. Gestion des utilisateurs293
      • 2. Supervision basique298
      • 3. Nettoyage de systèmes de fichiers302
      • Index311

  • Origine de la notice:
    • Electre
  • Disponible - 681.44 MAC

    Niveau 3 - Informatique