14 liens privés
J'ai régulièrement le besoin d'écrire des scripts shell un peu évolués. Il y a quelques mois, j'ai commencé à travailler sur un modèle que je met régulièrement à jour. Aujourd'hui, j'ai travaillé sur la couche pour gérer les logs et c'est pourquoi j'écris cet article.
Ce modèle contient les fonctions
usageethelppour décrire le fonctionnement du programme. La fonctionon_interruptpermet de gérer le signalSIGINTquand le programme est interrompu.La fonction
mainest la fonction qui contient le code principal du script. Elle contient la gestion des paramètres passés au script. Par défaut, plusieurs y sont déjà intégrés :-lpour définir le niveau de log désiré et-hpour afficher l'aide.Enfin, il y a la fonction
logpour afficher des messages de debug avec différents niveaux de criticité. Cela permet de générer des messages qui seront affichés ou pas selon les besoins. Les messages sont colorés selon le niveau de criticité et ils sont redirigés versstderr. Il est également possible d'ajouter la date.Le code source est disponible sur Gitnet et comme toujours, vous pouvez en faire ce que vous voulez !
En conclusion, le développement de ce modèle de script shell a été un projet passionnant et fructueux. En l'enrichissant régulièrement, j'ai pu créer une base solide pour gérer efficacement les fonctionnalités essentielles d'un script.