Je travaille normalement sur des machines Windows, mais à certaines occasions, je passe au développement sous Linux. Et mon projet le plus récent sera entièrement écrit sur certaines plateformes linix (pas la configuration standard Apache / MySQL / PHP). J'ai donc pensé qu'il serait utile d'apprendre à écrire un script d'automatisation Linux maintenant.
Je peux contourner le système, démarrer / arrêter les services, compiler / installer des trucs bien. Ce sont probablement des exercices de base pour un programmeur. Mais si, par exemple, je voulais déployer une certaine application automatiquement sur une machine Linux nouvellement créée chaque mois, j'aimerais savoir comment le faire.
Donc, si je voulais apprendre les scripts shell Linux, quel livre devrais-je lire?
ash
, et les très petites distributions ont également tendance à utiliser des shells dépouillés comme la busyboxsh
.Apprentissage du Bash Shell avec Classic Shell Scripting , suivi du Bash Cookbook .
Je suggérerais de charger à travers les deux premiers livres, sans trop se soucier de se souvenir de tout. Référencez-les comme vous voulez faire quelque chose dont vous vous souvenez avoir lu mais ne vous souvenez pas comment faire. Et revenez vers eux quelques mois plus tard et apprenez d'eux de nouvelles choses.
Remarque, cela vient du point de vue d'un administrateur Linux, donc je me penche vers les subtilités de bash sur le sh plus pur. Ce n'est que le script rare que je me donne la peine de rendre sh compatible. De plus, je ne considère pas tcsh comme un langage de script légitime.
la source
Les scripts shell ne sont pas des scripts shell. Différents systèmes sont livrés avec des shells différents et les différences de syntaxe et de sémantique sont importantes.
D'autres ont mentionné des livres Bash, pour Korn shell, je recommande l' apprentissage de O'Reilly's the Korn Shell . Si vous devez écrire des scripts shell portables, il y en a aussi de O'Reilly: Classic Shell Scripting .
À mon avis: L'écriture de scripts shell portables est un véritable cauchemar, même pour les gens qui sont assez habitués à un certain shell. Si vous venez d'un environnement Windows, vous êtes familier avec les trucs de base (services de démarrage / arrêt, compiler / installer des trucs) et votre objectif est l'automatisation, je resterais personnellement avec Perl.
Bien que Perl ait ses défauts, c'est quand il s'agit de coller différentes parties ensemble où il brille. Et c'est ce qui constitue l'essentiel de l'automatisation de mon expérience. De plus, sur les systèmes Unix, Perl est omniprésent.
la source
J'ai acheté l'amazone cinq étoiles `` Linux Command Line and Shell Scripting Bible '' de Richard Blum (ISBN: 047025128X) pour avoir obtenu ce `` script shell sérieux '' et je dois dire que je suis très impressionné par le livre. Vous donne des connaissances approfondies sur les scripts shell, mais également sur d'autres concepts nécessaires dans ce contexte, comme le fonctionnement des autorisations du système de fichiers Linux et vos outils Unix connus comme grep.
la source