{"id":2908,"date":"2012-09-29T12:00:56","date_gmt":"2012-09-29T11:00:56","guid":{"rendered":"http:\/\/www.blaess.fr\/christophe\/?page_id=2908"},"modified":"2025-05-04T10:18:36","modified_gmt":"2025-05-04T09:18:36","slug":"scripts-shell-linux-et-unix","status":"publish","type":"page","link":"https:\/\/www.blaess.fr\/christophe\/livres\/scripts-shell-linux-et-unix\/","title":{"rendered":"Scripts shell Linux et Unix"},"content":{"rendered":"<p style=\"text-align: justify;\"><a href=\"http:\/\/www.amazon.fr\/gp\/product\/B009PNVNJU\/ref=as_li_qf_sp_asin_tl?ie=UTF8&amp;camp=1642&amp;creative=6746&amp;creativeASIN=B009PNVNJU&amp;linkCode=as2&amp;tag=chbl-21\"><img loading=\"lazy\" decoding=\"async\" class=\"alignright size-medium wp-image-2917\" title=\"Scripts shell Linux et Unix\" src=\"http:\/\/www.blaess.fr\/christophe\/wp-content\/uploads\/2012\/09\/couverture-249x300.jpg\" alt=\"Scripts shell Linux et Unix\" width=\"249\" height=\"300\" \/><\/a>Ce livre, paru fin septembre 2012, est une nouvelle \u00e9dition de \u00ab\u00a0<a title=\"Shells Linux et Unix par la pratique\" href=\"http:\/\/www.blaess.fr\/christophe\/livres\/shells-linux-unix-pratique\/\" target=\"_blank\" rel=\"noopener\">Shells Linux et Unix par la pratique<\/a>\u00a0\u00bb avec un titre l\u00e9g\u00e8rement modifi\u00e9 pour faire mieux appara\u00eetre la notion de scripts qui est pr\u00e9dominante dans le texte.<\/p>\n<h1>Nouveaut\u00e9s<\/h1>\n<p style=\"text-align: justify;\">Le texte a \u00e9t\u00e9 l\u00e9g\u00e8rement retouch\u00e9 pour actualiser les informations concernant les shells (notamment <code>dash<\/code>, le <em>Debian Almquist Shell<\/em> que l&rsquo;on rencontre sur les distributions Debian, Ubuntu, etc.)<\/p>\n<p style=\"text-align: justify;\">Un chapitre suppl\u00e9mentaire a \u00e9t\u00e9 ajout\u00e9 contenant quinze scripts entiers que j&rsquo;utilise quotidiennement ou occasionnellement, mais qui m&rsquo;ont tous \u00e9t\u00e9 utiles un jour.<\/p>\n<p style=\"text-align: justify;\">Enfin, un QCM de v\u00e9rification de ses connaissances (avec corrections bien s\u00fbr) est disponible en fin d&rsquo;ouvrage.<\/p>\n<h1>Suppl\u00e9ments<\/h1>\n<p>Les exercices et exemples se trouvent ici&nbsp;:<\/p>\n<ul>\n<li>l&rsquo;archive au format TAR + GZ&nbsp;: <a title=\"http:\/\/www.blaess.fr\/christophe\/files\/livres\/sslu\/Scripts-shell-Linux-et-Unix.tar.gz\" href=\"http:\/\/www.blaess.fr\/christophe\/files\/livres\/sslu\/Scripts-shell-Linux-et-Unix.tar.gz\">Scripts-shell-Linux-et-Unix.tar.gz<\/a>,<\/li>\n<li>l&rsquo;archive au format ZIP&nbsp;: <a title=\"http:\/\/www.blaess.fr\/christophe\/files\/livres\/sslu\/Scripts-shell-Linux-et-Unix.zip\" href=\"http:\/\/www.blaess.fr\/christophe\/files\/livres\/sslu\/Scripts-shell-Linux-et-Unix.zip\">Scripts-shell-Linux-et-Unix.zip<\/a>.<\/li>\n<\/ul>\n<h1>Commander le livre sur Amazon<\/h1>\n<p style=\"text-align: center;\"><a href=\"http:\/\/www.amazon.fr\/gp\/product\/B009PNVNJU\/ref=as_li_qf_sp_asin_tl?ie=UTF8&amp;camp=1642&amp;creative=6746&amp;creativeASIN=B009PNVNJU&amp;linkCode=as2&amp;tag=chbl-21\">Scripts Shell Linux et Unix (sur Amazon)<\/a><\/p>\n<h1>Commander le livre en PDF sur iziBook<\/h1>\n<p style=\"text-align: center;\">La version PDF est d\u00e9sormais disponible.<\/p>\n<p style=\"text-align: center;\"><a href=\"http:\/\/izibook.eyrolles.com\/produit\/2445\/9782212176759\/Scripts%20shell%20Linux%20et%20Unix?affiliate_code=christophe_blaess\"><img loading=\"lazy\" decoding=\"async\" title=\"Scripts shell Linux et Unix De Christophe Blaess - Eyrolles\" src=\"http:\/\/izibook.eyrolles.com\/images\/thumbnails\/0001\/0854\/9782212135794_small.jpg\" alt=\"Scripts shell Linux et Unix De Christophe Blaess - Eyrolles\" width=\"80\" height=\"97\" border=\"0\" \/><\/a><br \/>\n<a href=\"http:\/\/izibook.eyrolles.com\/produit\/2445\/9782212176759\/Scripts%20shell%20Linux%20et%20Unix?affiliate_code=christophe_blaess\">Scripts shell Linux et Unix<\/a><\/p>\n<h1>Sommaire<\/h1>\n<ul>\n<li><strong>Avant-propos<\/strong><\/li>\n<li><strong>Chapitre 1 &#8211; Principes des scripts Shell<\/strong>\n<ul>\n<li>Le shell Unix\n<ul>\n<li>Pourquoi \u00e9crire un script shell\u00a0?<\/li>\n<li>Outils n\u00e9cessaires<\/li>\n<\/ul>\n<\/li>\n<li>Ex\u00e9cution d&rsquo;un script\n<ul>\n<li>Invocation de l&rsquo;interpr\u00e9teur<\/li>\n<li>Appel direct<\/li>\n<li>Ligne shebang<\/li>\n<\/ul>\n<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 2 &#8211; Programmation Shell<\/strong>\n<ul>\n<li>Premier aper\u00e7u<\/li>\n<li>Premier script, rm_secure<\/li>\n<li>Analyse d\u00e9taill\u00e9e<\/li>\n<li>Performances<\/li>\n<li>Exemple d&rsquo;ex\u00e9cution<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 3 &#8211; \u00c9valuation d&rsquo;expressions<\/strong>\n<ul>\n<li>Variables\n<ul>\n<li>Pr\u00e9cisions sur l&rsquo;op\u00e9rateur $<\/li>\n<\/ul>\n<\/li>\n<li>Calcul arithm\u00e9tique<\/li>\n<li>Invocation de commande<\/li>\n<li>Port\u00e9es et attributs des variables<\/li>\n<li>Param\u00e8tres\n<ul>\n<li>Param\u00e8tres positionnels<\/li>\n<li>Param\u00e8tres sp\u00e9ciaux<\/li>\n<\/ul>\n<\/li>\n<li>Protection des expressions\n<ul>\n<li>Protection par le caract\u00e8re backslash<\/li>\n<li>Protection par apostrophes<\/li>\n<li>Protection par guillemets<\/li>\n<\/ul>\n<\/li>\n<li>Tableaux<\/li>\n<li>\u00c9valuation explicite d&rsquo;une expression<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 4 &#8211; \u00c9l\u00e9ments de programmation shell<\/strong>\n<ul>\n<li>Commandes et code de retour\n<ul>\n<li>Commande simple<\/li>\n<li>Pipelines<\/li>\n<li>Listes de pipelines<\/li>\n<li>Commandes compos\u00e9es<\/li>\n<\/ul>\n<\/li>\n<li>Redirections d&rsquo;entr\u00e9es-sorties\n<ul>\n<li>Entr\u00e9es-sorties standards<\/li>\n<li>Redirection des entr\u00e9es-sorties standards<\/li>\n<li>Redirections avanc\u00e9es<\/li>\n<\/ul>\n<\/li>\n<li>Structures de contr\u00f4le\n<ul>\n<li>S\u00e9lection d&rsquo;instructions<\/li>\n<li>It\u00e9rations d&rsquo;instructions<\/li>\n<li>Fonctions<\/li>\n<\/ul>\n<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 5 &#8211; Commandes, variables et utilitaires syst\u00e8me<\/strong>\n<ul>\n<li>Commandes internes\n<ul>\n<li>Comportement du shell<\/li>\n<li>Ex\u00e9cution des scripts et commandes<\/li>\n<li>Interactions avec le syst\u00e8me<\/li>\n<li>Arguments en ligne de commande<\/li>\n<li>Variables internes<\/li>\n<\/ul>\n<\/li>\n<li>Commandes externes<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 6 &#8211; Programmation shell avanc\u00e9e<\/strong>\n<ul>\n<li>Processus fils, parall\u00e9lisme<\/li>\n<li>Arri\u00e8re-plan et d\u00e9mons<\/li>\n<li>Signaux\n<ul>\n<li>Envoi d&rsquo;un signal<\/li>\n<li>R\u00e9ception d&rsquo;un signal<\/li>\n<li>Attente de signaux<\/li>\n<\/ul>\n<\/li>\n<li>Communication entre processus<\/li>\n<li>Entr\u00e9es-sorties\n<ul>\n<li>tee<\/li>\n<li>xargs<\/li>\n<\/ul>\n<\/li>\n<li>Interface utilisateur\n<ul>\n<li>stty<\/li>\n<li>tput<\/li>\n<li>dialog<\/li>\n<\/ul>\n<\/li>\n<li>D\u00e9boguer un script<\/li>\n<li>Virgule flottante<\/li>\n<li>Conclusion<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 7 &#8211; Expressions r\u00e9guli\u00e8res &#8211; Grep<\/strong>\n<ul>\n<li>Introduction<\/li>\n<\/ul>\n<ul>\n<li>Expressions r\u00e9guli\u00e8res simples<\/li>\n<\/ul>\n<ul>\n<li>Expressions rationnelles \u00e9tendues<\/li>\n<li>Outil grep<\/li>\n<li>Recherche r\u00e9cursive avec find<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 8 &#8211; Sed<\/strong>\n<ul>\n<li>Pr\u00e9sentation<\/li>\n<li>Utilisation de Sed\n<ul>\n<li>Principe<\/li>\n<li>Fonctionnement de Sed<\/li>\n<li>Commandes Sed<\/li>\n<\/ul>\n<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 9 &#8211; Awk<\/strong>\n<ul>\n<li>Fonctionnement de Awk\n<ul>\n<li>Les motifs<\/li>\n<li>Les actions<\/li>\n<li>Les variables<\/li>\n<\/ul>\n<\/li>\n<li>Enregistrements et champs\n<ul>\n<li>Les enregistrements<\/li>\n<li>Les champs<\/li>\n<\/ul>\n<\/li>\n<li>Structures de contr\u00f4le<\/li>\n<li>Expressions<\/li>\n<li>Retour sur les affichages<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Chapitre 10 &#8211; Bonne \u00e9criture d&rsquo;un script<\/strong>\n<ul>\n<li>Pr\u00e9sentation g\u00e9n\u00e9rale<\/li>\n<li>Les variables<\/li>\n<li>Gestion des erreurs<\/li>\n<li>Les fonctions<\/li>\n<li>Conclusion<\/li>\n<li>Exercices<\/li>\n<\/ul>\n<\/li>\n<li><strong>Annexe A &#8211; Scripts complet<\/strong>\n<ul>\n<li>Administration syst\u00e8me\n<ul>\n<li>G\u00e9n\u00e9rateur de mots de passe<\/li>\n<li>Ex\u00e9cution d&rsquo;un ping vers un ensemble de serveurs<\/li>\n<li>Supervision distante d&rsquo;un petit parc de machines<\/li>\n<li>Image de l&rsquo;activit\u00e9 syst\u00e8me<\/li>\n<li>Synchronisation de r\u00e9pertoires distants<\/li>\n<\/ul>\n<\/li>\n<li>Fichiers et bases de donn\u00e9es\n<ul>\n<li>Sauvegarde quotidienne<\/li>\n<li>Renommage d&rsquo;un ensemble de fichiers<\/li>\n<li>Scan et archivage de documents<\/li>\n<li>Cr\u00e9ation d&rsquo;une base de donn\u00e9es<\/li>\n<li>Consultation d&rsquo;une base de donn\u00e9es<\/li>\n<\/ul>\n<\/li>\n<li>Scripts divers\n<ul>\n<li>Calcul de prix et de TVA<\/li>\n<li>G\u00e9n\u00e9rateur al\u00e9atoire suivant une loi normale<\/li>\n<li>Calcul et affichage d&rsquo;histogramme<\/li>\n<li>Pr\u00e9paration d&rsquo;un script d&rsquo;installation<\/li>\n<li>Pr\u00e9sentation d&rsquo;un fichier script<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<\/li>\n<li><strong>Annexe B &#8211; Q.C.M. d&rsquo;\u00e9valuation<\/strong>\n<ul>\n<li>\u00c9nonc\u00e9s<\/li>\n<li>Solutions<\/li>\n<\/ul>\n<\/li>\n<li><strong>Annexe C &#8211; Solutions des exercices<\/strong>\n<ul>\n<li>Chapitre 1<\/li>\n<li>Chapitre 2<\/li>\n<li>Chapitre 3<\/li>\n<li>Chapitre 4<\/li>\n<li>Chapitre 5<\/li>\n<li>Chapitre 7<\/li>\n<li>Chapitre 8<\/li>\n<\/ul>\n<\/li>\n<li><strong>Annexe D &#8211; Bibliographie<\/strong>\n<ul>\n<li>Livres et articles<\/li>\n<li>Sites de r\u00e9f\u00e9rences<\/li>\n<\/ul>\n<\/li>\n<li><strong>Index<\/strong><\/li>\n<\/ul>","protected":false},"excerpt":{"rendered":"<p>Ce livre, paru fin septembre 2012, est une nouvelle &eacute;dition de &laquo;&nbsp;Shells Linux et Unix par la pratique&nbsp;&raquo; avec un titre l&eacute;g&egrave;rement modifi&eacute; pour faire mieux appara&icirc;tre la notion de scripts qui est pr&eacute;dominante dans le texte. Nouveaut&eacute;s Le texte a &eacute;t&eacute; l&eacute;g&egrave;rement retouch&eacute; pour actualiser les informations concernant les shells (notamment dash, le Debian [&hellip;]<\/p>","protected":false},"author":1,"featured_media":0,"parent":15,"menu_order":2,"comment_status":"open","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-2908","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/pages\/2908","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/comments?post=2908"}],"version-history":[{"count":7,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/pages\/2908\/revisions"}],"predecessor-version":[{"id":7027,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/pages\/2908\/revisions\/7027"}],"up":[{"embeddable":true,"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/pages\/15"}],"wp:attachment":[{"href":"https:\/\/www.blaess.fr\/christophe\/wp-json\/wp\/v2\/media?parent=2908"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}