Bash : aller encore plus loin avec les bonnes pratiques

Magazine
Marque
GNU/Linux Magazine
Numéro
192
Mois de parution
avril 2016
Spécialité(s)


Résumé
Dans le précédent article, nous avons déjà présenté un ensemble de conventions et d'astuces permettant d'améliorer grandement la lisibilité et la maintenance de scripts Bash. Dans ce second article, nous allons aller encore plus loin et discuter de nombreux aspects de l'interpréteur, et de la syntaxe qui lui est associée, qui assureront la robustesse de vos scripts.

Cet article couvre un ensemble de techniques et de mécanismes spécifiques à Bash qui, utilisés systématiquement, apportent beaucoup de robustesse et de fiabilité à l'exécution des scripts.

Sans surprise, le premier point que nous allons évoquer dans cet article concerne la plus primitive des primitives de la programmation : les variables. Nous étudierons ensuite un ensemble de techniques permettant de gérer proprement les erreurs lors de l'exécution du script, avant de finir par une section « rubrique à brac », contenant une série d'astuces et de techniques en tout genre.

1. Protéger ses variables

1.1 Overquoting...

Vous en avez probablement déjà fait l'expérience, les scripts shell sont relativement fragiles. Il suffit parfois de passer un mauvais argument pour obtenir un comportement totalement différent de celui qu'on attendait. Un exemple rapide à l'aide de la commande cp :

function copy() {

local src=${1}

local dest=${2}


cp ${src} ${dest}

}


$ copy a b

$ copy a "b d"...

Cet article est réservé aux abonnés. Il vous reste 94% à découvrir.
S'abonner à Connect
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Je m'abonne


Article rédigé par

Par le(s) même(s) auteur(s)

Automatiser le déploiement d'un MOM avec Wildfly et Ansible

Magazine
Marque
Linux Pratique
Numéro
137
Mois de parution
mai 2023
Spécialité(s)
Résumé

Dans de nombreuses organisations et grandes entreprises, les solutions logicielles de gestion de messages (ou MOM pour « Messaging Oriented Middleware ») sont omniprésentes. Dans cet article, nous proposons donc d’évoquer le déploiement d’une telle solution, à l’aide du serveur Java open source, Wildfly, et de manière entièrement automatisée grâce à Ansible…

Automatiser votre infrastructure Kafka pour l'Event Streaming

Magazine
Marque
Linux Pratique
HS n°
Numéro
57
Mois de parution
avril 2023
Spécialité(s)
Résumé

Le projet open source Apache Kafka est une plateforme, distribuée, d’event streaming, employée par de nombreuses entreprises pour implémenter leurs solutions logicielles. Mais, de manière concrète de quoi s’agit-il ? Qu’est-ce que Kafka entend par la notion d’event streaming ? Quelques éléments de réponse dans cet article d’introduction à son déploiement et utilisation.

Introduction aux conteneurs à l’aide de Podman

Magazine
Marque
Linux Pratique
HS n°
Numéro
57
Mois de parution
avril 2023
Spécialité(s)
Résumé

Les déploiements à l’aide de conteneurs deviennent, de plus en plus, le standard pour les environnements de développement et de test, comme de production. Cet article propose donc d’introduire son lecteur à la manipulation de ce type de mécanisme de déploiement, afin que celui-ci puisse prendre en main, de manière pratique, leur utilisation.

Les derniers articles Premiums

Les derniers articles Premium

De la scytale au bit quantique : l’avenir de la cryptographie

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Imaginez un monde où nos données seraient aussi insaisissables que le célèbre chat de Schrödinger : à la fois sécurisées et non sécurisées jusqu'à ce qu'un cryptographe quantique décide d’y jeter un œil. Cet article nous emmène dans les méandres de la cryptographie quantique, où la physique quantique n'est pas seulement une affaire de laboratoires, mais la clé d'un futur numérique très sécurisé. Entre principes quantiques mystérieux, défis techniques, et applications pratiques, nous allons découvrir comment cette technologie s'apprête à encoder nos données dans une dimension où même les meilleurs cryptographes n’y pourraient rien faire.

Les nouvelles menaces liées à l’intelligence artificielle

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Sommes-nous proches de la singularité technologique ? Peu probable. Même si l’intelligence artificielle a fait un bond ces dernières années (elle est étudiée depuis des dizaines d’années), nous sommes loin d’en perdre le contrôle. Et pourtant, une partie de l’utilisation de l’intelligence artificielle échappe aux analystes. Eh oui ! Comme tout système, elle est utilisée par des acteurs malveillants essayant d’en tirer profit pécuniairement. Cet article met en exergue quelques-unes des applications de l’intelligence artificielle par des acteurs malveillants et décrit succinctement comment parer à leurs attaques.

Migration d’une collection Ansible à l’aide de fqcn_migration

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Distribuer du contenu Ansible réutilisable (rôle, playbooks) par l’intermédiaire d’une collection est devenu le standard dans l’écosystème de l’outil d’automatisation. Pour éviter tout conflit de noms, ces collections sont caractérisées par un nom unique, formé d’une espace de nom, qui peut-être employé par plusieurs collections (tel qu'ansible ou community) et d’un nom plus spécifique à la fonction de la collection en elle-même. Cependant, il arrive parfois qu’il faille migrer une collection d’un espace de noms à un autre, par exemple une collection personnelle ou communautaire qui passe à un espace de noms plus connus ou certifiés. De même, le nom même de la collection peut être amené à changer, si elle dépasse son périmètre d’origine ou que le produit qu’elle concerne est lui-même renommé.

Les listes de lecture

8 article(s) - ajoutée le 01/07/2020
Découvrez notre sélection d'articles pour faire vos premiers pas avec les conteneurs, apprendre à les configurer et les utiliser au quotidien.
11 article(s) - ajoutée le 02/07/2020
Si vous recherchez quels sont les outils du DevOps et comment les utiliser, cette liste est faite pour vous.
8 article(s) - ajoutée le 02/07/2020
Il est essentiel d'effectuer des sauvegardes régulières de son travail pour éviter de perdre toutes ses données bêtement. De nombreux outils sont disponibles pour nous assister dans cette tâche.
Voir les 58 listes de lecture

Abonnez-vous maintenant

et profitez de tous les contenus en illimité

Je découvre les offres

Déjà abonné ? Connectez-vous