{"id":51490,"date":"2026-08-08T14:43:56","date_gmt":"2026-08-08T07:43:56","guid":{"rendered":"\/fr\/tutoriels\/?p=51490"},"modified":"2026-08-06T14:44:23","modified_gmt":"2026-08-06T07:44:23","slug":"exemple-script-bash","status":"publish","type":"post","link":"\/fr\/tutoriels\/exemple-script-bash\/","title":{"rendered":"25 exemples de scripts Bash sous Linux pour bien d\u00e9marrer"},"content":{"rendered":"<p class=\"wp-block-paragraph\">Bash, ou &laquo; Bourne-again shell &raquo;, est l&rsquo;un des shells et langages de commande les plus populaires aupr&egrave;s des utilisateurs de VPS Linux. Lanc&eacute; en 1989, il est depuis devenu le shell par d&eacute;faut de la plupart des distributions Linux.<\/p><p class=\"wp-block-paragraph\">Les scripts Bash permettent aux utilisateurs et aux administrateurs syst&egrave;me d&rsquo;automatiser des processus et d&rsquo;&eacute;conomiser des centaines d&rsquo;heures de travail manuel. Il est &eacute;galement important de noter que Bash est disponible sous Windows et macOS.<\/p><p class=\"wp-block-paragraph\">Ce tutoriel pr&eacute;sente les bases de l&rsquo;&eacute;criture de scripts Bash. Il rassemble plus de vingt exemples de scripts Bash pour vous aider &agrave; faire vos premiers pas avec Bash.<\/p><figure class=\"wp-block-image size-full\"><a href=\"https:\/\/assets.hostinger.com\/content\/tutorials\/pdf\/Linux-Commands-Cheatsheet-FR.pdf\" target=\"_blank\" rel=\"noopener\"><img decoding=\"async\" width=\"1024\" height=\"283\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/public\" alt=\"\" class=\"wp-image-41445\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=1024,fit=scale-down 1024w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2022\/12\/Linux-cheat-sheet-FR-1024x283-1.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure><h2 class=\"wp-block-heading\" id=\"h-a-quoi-servent-les-scripts-bash\">&Agrave; quoi servent les scripts Bash ?<\/h2><p class=\"wp-block-paragraph\">Avant d&rsquo;examiner les cas d&rsquo;utilisation des scripts Bash, voyons ce que sont Bash et un script Bash.<\/p><p class=\"wp-block-paragraph\"><strong>Bash est un interpr&eacute;teur de ligne de commande<\/strong> qui s&rsquo;ex&eacute;cute dans une fen&ecirc;tre de terminal et permet de g&eacute;rer et d&rsquo;ex&eacute;cuter des commandes shell. Un script Bash, aussi appel&eacute; script shell, est un ensemble de commandes destin&eacute;es &agrave; &ecirc;tre ex&eacute;cut&eacute;es sur un syst&egrave;me Linux. Un fichier qui contient ces instructions est appel&eacute; un script Bash.<\/p><p class=\"wp-block-paragraph\">En pratique, l&rsquo;interpr&eacute;teur Bash lit le script et ex&eacute;cute les commandes qu&rsquo;il contient. Par exemple, un utilisateur Linux peut lancer des centaines de commandes d&rsquo;un simple clic au lieu de les saisir une par une. Les scripts Bash sont donc particuli&egrave;rement utiles pour gagner en productivit&eacute;, automatiser des t&acirc;ches et &eacute;viter les op&eacute;rations r&eacute;p&eacute;titives.<\/p><h2 class=\"wp-block-heading\" id=\"h-25-exemples-de-scripts-bash\">25 exemples de scripts Bash<\/h2><p class=\"wp-block-paragraph\">Dans la section suivante, d&eacute;couvrez 25 exemples de scripts Bash parmi les plus courants, notamment pour manipuler des variables et afficher diff&eacute;rentes valeurs. Nous verrons &eacute;galement les fonctions, les tableaux, les boucles et bien d&rsquo;autres concepts.<\/p><h3 class=\"wp-block-heading\">1. Hello World<\/h3><p class=\"wp-block-paragraph\">Hello World est l&rsquo;exemple de script Bash le plus simple pour d&eacute;buter. Nous allons cr&eacute;er une nouvelle variable nomm&eacute;e learningbash, puis afficher le texte &laquo; Hello World &raquo;. Commencez par cr&eacute;er un nouveau fichier de script Bash avec l&rsquo;&eacute;diteur de texte de votre choix :<\/p><pre class=\"wp-block-preformatted\">nano hello.sh<\/pre><p class=\"wp-block-paragraph\">Collez le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\n#Creates a new variable with a value of \"Hello World\"\nlearningbash=\"Hello World\"\necho $learningbash<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc732352\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc732352\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"249\" height=\"66\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affichant-le-resultat-du-premier-script-Bash-Hello-World-.png\/public\" alt=\"Fen&ecirc;tre de terminal affichant le r&eacute;sultat du premier script Bash &laquo; Hello World &raquo;.\" class=\"wp-image-51451\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affichant-le-resultat-du-premier-script-Bash-Hello-World-.png\/w=249,fit=scale-down 249w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affichant-le-resultat-du-premier-script-Bash-Hello-World-.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 249px) 100vw, 249px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">La premi&egrave;re ligne (<strong>#!\/bin\/bash<\/strong>) est pr&eacute;sente dans tous les scripts Bash. Elle indique au syst&egrave;me d&rsquo;exploitation d&rsquo;utiliser l&rsquo;interpr&eacute;teur Bash pour ex&eacute;cuter le script.<\/p><h3 class=\"wp-block-heading\">2. Commande echo<\/h3><p class=\"wp-block-paragraph\">La commande Bash echo permet d&rsquo;afficher du texte ainsi que la valeur des variables. Dans cet exemple, nous allons voir comment les guillemets influencent son comportement. Commencez par cr&eacute;er un nouveau fichier de script Bash :<\/p><pre class=\"wp-block-preformatted\">nano echo.sh<\/pre><p class=\"wp-block-paragraph\">Cet exemple cr&eacute;e une nouvelle variable et affiche sa valeur avec diff&eacute;rents types de guillemets.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nprovider=\"Hostinger\"\necho 'The best hosting provider is $provider'\necho \"The best hosting provider is $provider\"<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc7331f4\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc7331f4\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"350\" height=\"85\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-la-commande-echo-.png\/public\" alt=\"Fen&ecirc;tre de terminal montrant le r&eacute;sultat de la commande echo.\" class=\"wp-image-51452\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-la-commande-echo-.png\/w=350,fit=scale-down 350w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-la-commande-echo-.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-la-commande-echo-.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 350px) 100vw, 350px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Comme vous pouvez le constater, lorsque la commande Bash echo est utilis&eacute;e avec des guillemets doubles (&ldquo;), elle affiche la valeur de la variable. En revanche, avec des guillemets simples (&lsquo;), elle affiche uniquement le nom de la variable.<\/p><h3 class=\"wp-block-heading\">3. Commande sleep<\/h3><p class=\"wp-block-paragraph\">La <a href=\"\/fr\/tutoriels\/commande-sleep-linux\/\">commande sleep<\/a> suspend temporairement l&rsquo;ex&eacute;cution d&rsquo;un script Bash pendant une dur&eacute;e d&eacute;finie. Commencez par cr&eacute;er un nouveau fichier de script Bash :<\/p><pre class=\"wp-block-preformatted\">nano sleep.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le script suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nsleep 10 &amp;&amp; echo &ldquo;I&rsquo;ve been sleeping for 10 seconds, I want more&rdquo; &amp;&amp; sleep 10 &amp;&amp; echo &ldquo;I&rsquo;m done sleeping, thanks!&rdquo;<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc734016\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc734016\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"413\" height=\"86\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-utilisant-la-commande-sleep-Lidee-de-base-est-quil-met-le-systeme-en-pause-pendant-une-duree-definie.png\/public\" alt=\"Script Bash utilisant la commande sleep. Son principe est de suspendre l'ex&eacute;cution du script pendant une dur&eacute;e d&eacute;finie.\" class=\"wp-image-51453\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-utilisant-la-commande-sleep-Lidee-de-base-est-quil-met-le-systeme-en-pause-pendant-une-duree-definie.png\/w=413,fit=scale-down 413w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-utilisant-la-commande-sleep-Lidee-de-base-est-quil-met-le-systeme-en-pause-pendant-une-duree-definie.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-utilisant-la-commande-sleep-Lidee-de-base-est-quil-met-le-systeme-en-pause-pendant-une-duree-definie.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 413px) 100vw, 413px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">L&rsquo;exemple ci-dessus commence par une commande Bash sleep, qui suspend l&rsquo;ex&eacute;cution du script pendant 10 secondes. Nous la combinons ensuite avec la commande echo afin que le script attende 10 secondes, affiche un message, patiente de nouveau pendant 10 secondes, affiche un second message, puis termine son ex&eacute;cution.<\/p><p>\n\n\n        <div class=\"protip\">\n            <div class=\"protip__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path d=\"M1.49234 23.5024C1.23229 23.5024 0.972242 23.4024 0.782206 23.2123C0.562165 22.9923 0.452144 22.6822 0.502153 22.3722C0.562165 21.9221 1.14227 17.9113 3.00262 16.351C3.63274 15.8209 4.43289 15.5509 5.26305 15.5609C6.09321 15.5909 6.87335 15.9109 7.47347 16.4911C8.6937 17.6913 8.76371 19.6717 7.6435 20.9919C6.0832 22.8523 2.08245 23.4324 1.63237 23.4924C1.59236 23.4924 1.54235 23.4924 1.50234 23.4924L1.49234 23.5024ZM5.16303 17.5613C4.84297 17.5613 4.53291 17.6713 4.29287 17.8813C3.60274 18.4614 3.07264 19.9317 2.75258 21.242C4.06282 20.9219 5.5331 20.3918 6.11321 19.7017C6.55329 19.1716 6.54329 18.3814 6.0832 17.9213C5.85316 17.7013 5.5431 17.5713 5.20304 17.5613C5.19304 17.5613 5.17303 17.5613 5.16303 17.5613ZM11.7243 21.8821C11.4942 21.8821 11.2642 21.8021 11.0841 21.652C10.8541 21.462 10.7241 21.1819 10.7241 20.8819V15.9109L8.08358 13.2705H3.11264C2.81259 13.2705 2.53254 13.1404 2.3425 12.9104C2.15246 12.6803 2.07245 12.3803 2.12246 12.0902C2.19247 11.7102 2.84259 8.36953 4.70294 7.12929C6.33325 6.04909 8.96375 6.49918 10.244 6.80923C11.5442 4.96889 13.2546 3.4286 15.2349 2.33839C17.4553 1.11816 19.9858 0.518051 22.4963 0.498047C23.0464 0.498047 23.4865 0.948132 23.4865 1.49824C23.4865 5.0389 22.3763 9.97983 17.1753 13.7605C17.4853 15.0408 17.9354 17.6613 16.8552 19.2816C15.615 21.1419 12.2744 21.7921 11.8943 21.8621C11.8343 21.8721 11.7743 21.8821 11.7143 21.8821H11.7243ZM12.7245 16.181V19.6016C13.7146 19.2916 14.7948 18.7915 15.2049 18.1814C15.675 17.4812 15.605 16.091 15.385 14.9008C14.5248 15.3808 13.6346 15.8109 12.7245 16.181ZM9.66388 12.0302L11.9643 14.3307C13.1845 13.8306 14.3648 13.2204 15.485 12.5103C19.9358 9.51974 21.2361 5.60901 21.4561 2.53843C19.6157 2.67846 17.8254 3.20856 16.2051 4.09872C14.2847 5.14892 12.6544 6.68921 11.4942 8.54956C10.7841 9.65977 10.174 10.82 9.66388 12.0302ZM4.39289 11.2701H7.81353C8.1936 10.3599 8.63368 9.46974 9.11377 8.60957C7.92355 8.38953 6.51329 8.31952 5.81315 8.78961C5.19304 9.19968 4.70294 10.3099 4.39289 11.2701Z\" fill=\"#673DE6\"\/>\n                <\/svg>\n                <p class=\"protip__title\">\n                    Conseil de pro                <\/p>\n            <\/div>\n            <p class=\"protip__content\">Vous pouvez interrompre un script Bash &agrave; tout moment en appuyant sur <strong>Ctrl + C<\/strong>, sans attendre la fin de son ex&eacute;cution.<\/p>\n                    <\/div>\n        \n\n\n\n<\/p><h3 class=\"wp-block-heading\">4. Commande wait<\/h3><p class=\"wp-block-paragraph\">wait est une <a href=\"\/fr\/tutoriels\/commandes-linux\/\">commande Linux<\/a> int&eacute;gr&eacute;e qui attend la fin d&rsquo;un processus en cours d&rsquo;ex&eacute;cution. Elle s&rsquo;utilise avec un identifiant de processus (PID) ou un identifiant de t&acirc;che sp&eacute;cifique.<\/p><p class=\"wp-block-paragraph\">Voici comment cr&eacute;er un script Bash utilisant la commande <strong>wait<\/strong>. Commencez par cr&eacute;er un nouveau fichier Bash :<\/p><pre class=\"wp-block-preformatted\">nano wait.sh<\/pre><p class=\"wp-block-paragraph\">Collez le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nwait 1234\necho &ldquo;Done&rdquo;<\/pre><p>\n\n\n<div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>Important !<\/strong> Si aucun identifiant de t&acirc;che n&rsquo;est fourni, la commande wait attend la fin de toutes les t&acirc;ches filles ex&eacute;cut&eacute;es en arri&egrave;re-plan.\n            <\/p><\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\">5. Commentaires<\/h3><p class=\"wp-block-paragraph\">Vous pouvez facilement ajouter des commentaires &agrave; un script Bash &agrave; l&rsquo;aide du symbole #. Cette fonctionnalit&eacute; est particuli&egrave;rement utile si votre script est long et que certaines lignes n&eacute;cessitent des explications.<\/p><p class=\"wp-block-paragraph\">Commencez par cr&eacute;er un nouveau script Bash :<\/p><pre class=\"wp-block-preformatted\">nano comments.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\n# Define a variable named Hostinger\nprovider=\"Hostinger\"\n# Print out the following text\necho 'The best hosting provider is $provider'\n# Print out the following text with $provider variable value\necho \"The best hosting provider is $provider\"<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc734fdb\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc734fdb\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"348\" height=\"87\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/bash-comments.png\/public\" alt=\"Aper&ccedil;u des commentaires dans un script Bash.\" class=\"wp-image-51496\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/bash-comments.png\/w=348,fit=scale-down 348w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/bash-comments.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/bash-comments.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 348px) 100vw, 348px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Gardez &agrave; l&rsquo;esprit que les commentaires d&rsquo;un script Bash ne sont visibles que dans un &eacute;diteur de texte.<\/p><h3 class=\"wp-block-heading\">6. Lire une entr&eacute;e utilisateur<\/h3><p class=\"wp-block-paragraph\">Pour lire une entr&eacute;e utilisateur, nous allons utiliser la commande Bash <strong>read<\/strong>. Commencez par cr&eacute;er un nouveau fichier de script Bash :<\/p><pre class=\"wp-block-preformatted\">nano read.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le script ci-dessous :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\necho \"What is your age?\"\nread age\necho \"Wow, you look younger than $age years old\"<\/pre><p class=\"wp-block-paragraph\">Dans cet exemple, l&rsquo;utilisateur saisit son &acirc;ge, puis la commande echo affiche le message correspondant.<\/p><h3 class=\"wp-block-heading\">7. Les boucles<\/h3><p class=\"wp-block-paragraph\">Les boucles sont des &eacute;l&eacute;ments essentiels dans de nombreux langages de programmation. En <a href=\"\/fr\/tutoriels\/guide-bash-boucle-for\/\">Bash, une boucle<\/a> est un ensemble d&rsquo;instructions qui se r&eacute;p&egrave;tent jusqu&rsquo;&agrave; ce qu&rsquo;une condition d&eacute;finie soit remplie. Commencez par cr&eacute;er un script Bash utilisant une boucle :<\/p><pre class=\"wp-block-preformatted\">nano whileloop.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nn=0\nwhile :\ndo\necho Countdown: $n\n((n++))\ndone<\/pre><p class=\"wp-block-paragraph\">Le script affiche un compte &agrave; rebours &agrave; l&rsquo;infini jusqu&rsquo;&agrave; ce que vous l&rsquo;interrompiez en appuyant sur <strong>Ctrl<\/strong> + <strong>C<\/strong>.<\/p><p class=\"wp-block-paragraph\">Maintenant que nous avons test&eacute; la boucle while, passons &agrave; la boucle for. Cr&eacute;ez un fichier Bash pour cet exemple :<\/p><pre class=\"wp-block-preformatted\">nano forloop.sh<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y le script suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nfor (( n=2; n&lt;=10; n++ ))\ndo\necho \"$n seconds\"\ndone<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc736366\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc736366\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"264\" height=\"199\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-illustrant-la-boucle-for-On-constate-quil-est-tres-facile-decrire-des-scripts-en-Bash-car-ils-ne-necessitent-que-quelques-elements-pour-fonctionner.png\/public\" alt=\"Script Bash illustrant une boucle for.\" class=\"wp-image-51454\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-illustrant-la-boucle-for-On-constate-quil-est-tres-facile-decrire-des-scripts-en-Bash-car-ils-ne-necessitent-que-quelques-elements-pour-fonctionner.png\/w=264,fit=scale-down 264w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-illustrant-la-boucle-for-On-constate-quil-est-tres-facile-decrire-des-scripts-en-Bash-car-ils-ne-necessitent-que-quelques-elements-pour-fonctionner.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 264px) 100vw, 264px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Le script affiche les nombres de 2 &agrave; 10 en ajoutant le mot &laquo; seconds &raquo; &agrave; chacun d&rsquo;eux.<\/p><h3 class=\"wp-block-heading\">8. Cr&eacute;er un tableau<\/h3><p class=\"wp-block-paragraph\">Un <a href=\"\/fr\/tutoriels\/bash-array\/\">tableau Bash<\/a> est une structure de donn&eacute;es permettant de stocker des informations sous forme index&eacute;e. Il est particuli&egrave;rement utile pour stocker et r&eacute;cup&eacute;rer rapidement de grandes quantit&eacute;s de donn&eacute;es. L&rsquo;une de ses particularit&eacute;s est que, contrairement aux tableaux de nombreux autres langages de programmation, un tableau Bash peut contenir diff&eacute;rents types d&rsquo;&eacute;l&eacute;ments. Par exemple, un tableau Bash peut stocker &agrave; la fois des cha&icirc;nes de caract&egrave;res et des nombres.<\/p><p class=\"wp-block-paragraph\">Cr&eacute;ez un nouveau fichier dans le r&eacute;pertoire actuel :<\/p><pre class=\"wp-block-preformatted\">nano array.sh<\/pre><p class=\"wp-block-paragraph\">Combinez la boucle <strong>for<\/strong> vue pr&eacute;c&eacute;demment avec un nouveau tableau index&eacute; :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\n# Create an indexed array\nIndexedArray=(egg burger milk)\n#Iterate over the array to get all the values\nfor i in \"${IndexedArray[@]}\";do echo \"$i\";done<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc7373d9\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc7373d9\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"249\" height=\"102\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-permettant-de-creer-et-dafficher-un-tableau-La-derniere-ligne-du-script-contient-une-boucle-for-qui-affiche-le-tableau.png\/public\" alt=\"Script Bash permettant de cr&eacute;er et d'afficher un tableau.\" class=\"wp-image-51455\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-permettant-de-creer-et-dafficher-un-tableau-La-derniere-ligne-du-script-contient-une-boucle-for-qui-affiche-le-tableau.png\/w=249,fit=scale-down 249w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-permettant-de-creer-et-dafficher-un-tableau-La-derniere-ligne-du-script-contient-une-boucle-for-qui-affiche-le-tableau.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 249px) 100vw, 249px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Le script parcourt le tableau <strong>IndexedArray<\/strong> et affiche chacune de ses valeurs.<\/p><h3 class=\"wp-block-heading\">9. Les instructions conditionnelles<\/h3><p class=\"wp-block-paragraph\">L&rsquo;instruction conditionnelle la plus courante est if. Facile &agrave; &eacute;crire et &agrave; comprendre, elle est &eacute;galement utilis&eacute;e dans des scripts shell plus avanc&eacute;s.<\/p><p class=\"wp-block-paragraph\">Commencez par cr&eacute;er un nouveau fichier Bash :<\/p><pre class=\"wp-block-preformatted\">nano if.sh<\/pre><p class=\"wp-block-paragraph\">Collez le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nsalary=1000\nexpenses=800\n#Check if salary and expenses are equal\nif [ $salary == $expenses ];\nthen\n    echo \"Salary and expenses are equal\"\n#Check if salary and expenses are not equal\nelif [ $salary != $expenses ];\nthen\n    echo \"Salary and expenses are not equal\"\nfi<\/pre><p class=\"wp-block-paragraph\">Ce script cr&eacute;e deux variables, puis v&eacute;rifie si leurs valeurs sont identiques.<\/p><h3 class=\"wp-block-heading\">10. Fonctions<\/h3><p class=\"wp-block-paragraph\">Une fonction Bash est un ensemble de commandes que vous pouvez r&eacute;utiliser plusieurs fois dans un script Bash. Cr&eacute;ez un nouveau fichier :<\/p><pre class=\"wp-block-preformatted\">nano function.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le code suivant, qui cr&eacute;e une fonction &laquo; Hello World &raquo; simple :<\/p><pre class=\"wp-block-preformatted\">#!\/bin\/bash\nhello () {\n   echo 'Hello World!'\n}\nhello<\/pre><h3 class=\"wp-block-heading\">11. Afficher la longueur d&rsquo;une cha&icirc;ne de caract&egrave;res<\/h3><p class=\"wp-block-paragraph\">Il existe plusieurs fa&ccedil;ons de calculer la longueur d&rsquo;une cha&icirc;ne de caract&egrave;res en Bash. Nous allons voir la plus simple. Cr&eacute;ez un fichier nomm&eacute; <strong>stringlength.sh<\/strong> :<\/p><pre class=\"wp-block-preformatted\">nano stringlength.sh<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\n# Create a new string\nmystring=\"lets count the length of this string\"\ni=${#mystring}\necho \"Length: $i\"<\/pre><p class=\"wp-block-paragraph\">Ici, l&rsquo;op&eacute;rateur <strong>#<\/strong> permet d&rsquo;obtenir la longueur de la cha&icirc;ne stock&eacute;e dans la variable.<\/p><h3 class=\"wp-block-heading\">12. Extraire une partie d&rsquo;une cha&icirc;ne de caract&egrave;res<\/h3><p class=\"wp-block-paragraph\">Si vous devez extraire une partie d&rsquo;une cha&icirc;ne de caract&egrave;res, vous pouvez utiliser les outils d&rsquo;extraction de Bash. Commencez par cr&eacute;er un nouveau script Bash :<\/p><pre class=\"wp-block-preformatted\">nano extractstring.sh<\/pre><p class=\"wp-block-paragraph\">Le script suivant contient cinq valeurs, dont quatre sont des cha&icirc;nes de caract&egrave;res. Dans cet exemple, nous allons extraire uniquement la valeur num&eacute;rique. Pour cela, nous utilisons la <a href=\"\/fr\/tutoriels\/commande-cut-linux\/\">commande cut<\/a>. Nous lui indiquons d&rsquo;abord que les valeurs sont s&eacute;par&eacute;es par une virgule &agrave; l&rsquo;aide de l&rsquo;option <strong>-d<\/strong>, puis nous lui demandons d&rsquo;extraire la cinqui&egrave;me valeur avec l&rsquo;option <strong>-f.<\/strong><\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\ncut -d , -f 5 &lt;&lt;&lt; \"Website,Domain,DNS,SMTP,5005\"<\/pre><p class=\"wp-block-paragraph\">Dans cet autre exemple, la cha&icirc;ne contient &eacute;galement des chiffres. Nous allons utiliser les commandes <strong>expr<\/strong> et <strong>substr<\/strong> pour extraire uniquement le texte &laquo; Hostinger &raquo;.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nexpr substr \"458449Hostinger4132\" 7 9<\/pre><h3 class=\"wp-block-heading\">13. Rechercher et remplacer du texte dans une cha&icirc;ne de caract&egrave;res<\/h3><p class=\"wp-block-paragraph\">La <strong>recherche et le remplacement<\/strong> constituent une autre op&eacute;ration utile sur les cha&icirc;nes de caract&egrave;res en Bash. Cr&eacute;ez un fichier nomm&eacute; <strong>findreplace.sh<\/strong> :<\/p><pre class=\"wp-block-preformatted\">nano findreplace.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le script Bash suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nfirst=\"I drive a BMW and Volvo\"\nsecond=\"Audi\"\necho \"${first\/BMW\/\"$second\"}\" <\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc738c3c\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc738c3c\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"304\" height=\"64\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-de-recherche-et-remplacement-en-Bash.png\/public\" alt=\"Script Bash illustrant la recherche et le remplacement dans une cha&icirc;ne de caract&egrave;res.\" class=\"wp-image-51459\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-de-recherche-et-remplacement-en-Bash.png\/w=304,fit=scale-down 304w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-de-recherche-et-remplacement-en-Bash.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-de-recherche-et-remplacement-en-Bash.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 304px) 100vw, 304px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">La recherche et le remplacement ne n&eacute;cessitent aucune commande sp&eacute;cifique : tout repose sur la manipulation des cha&icirc;nes de caract&egrave;res.<\/p><h3 class=\"wp-block-heading\">14. Concat&eacute;ner des cha&icirc;nes de caract&egrave;res<\/h3><p class=\"wp-block-paragraph\">La concat&eacute;nation consiste &agrave; ajouter une cha&icirc;ne de caract&egrave;res &agrave; la fin d&rsquo;une autre. Commencez par cr&eacute;er le fichier <strong>concatenation.sh<\/strong>.<\/p><pre class=\"wp-block-preformatted\">nano concatenation.sh<\/pre><p class=\"wp-block-paragraph\">Voici l&rsquo;exemple le plus simple :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nfirststring=\"The secret is...\"\nsecondstring=\"Bash\"\nthirdstring=\"$firststring$secondstring\"\necho \"$thirdstring\"<\/pre><p class=\"wp-block-paragraph\">Ce script concat&egrave;ne les valeurs des variables <strong>firststring<\/strong> et <strong>secondstring<\/strong> afin de cr&eacute;er une nouvelle variable nomm&eacute;e <strong>thirdstring<\/strong>.<\/p><p class=\"wp-block-paragraph\">Voici un exemple un peu plus avanc&eacute; :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nfirststring=\"The secret is...\"\nfirststring+=\"Bash\"\necho \"$firststring\"<\/pre><p class=\"wp-block-paragraph\">Ce script utilise l&rsquo;op&eacute;rateur <strong>+=<\/strong> pour concat&eacute;ner des cha&icirc;nes de caract&egrave;res. Avec cette m&eacute;thode, une seule variable suffit pour ajouter une nouvelle cha&icirc;ne &agrave; la pr&eacute;c&eacute;dente.<\/p><h3 class=\"wp-block-heading\">15. V&eacute;rifier si un nombre est pair ou impair<\/h3><p class=\"wp-block-paragraph\">Il est facile de d&eacute;terminer si un nombre est pair ou impair &agrave; l&rsquo;aide de l&rsquo;instruction if et de quelques op&eacute;rations math&eacute;matiques simples. Cr&eacute;ez un fichier nomm&eacute; <strong>evenoddnumbers.sh<\/strong> :<\/p><pre class=\"wp-block-preformatted\">nano evenoddnumbers.sh<\/pre><p class=\"wp-block-paragraph\">Le script utilise la commande read pour r&eacute;cup&eacute;rer la saisie de l&rsquo;utilisateur, puis calcule le reste de la division par 2. Si ce reste est &eacute;gal &agrave; 0, le nombre est pair.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nread -p \"Enter a number and I will check if its odd or even \" mynumber\nif [ $((mynumber%2)) -eq 0 ]\nthen\necho \"Your number is even\"\nelse\necho \"Your number is odd.\"\nfi<\/pre><h3 class=\"wp-block-heading\">16. Calculer la factorielle d&rsquo;un nombre<\/h3><p class=\"wp-block-paragraph\">La factorielle d&rsquo;un nombre correspond au produit de tous les entiers positifs inf&eacute;rieurs ou &eacute;gaux &agrave; ce nombre. Par exemple, la factorielle de 5 est &eacute;gale &agrave; 120 :<\/p><pre class=\"wp-block-preformatted\">5! = 5*4*3*2*1 = 120<\/pre><p class=\"wp-block-paragraph\">Les scripts de calcul de factorielle sont particuli&egrave;rement utiles pour les personnes qui d&eacute;couvrent la r&eacute;cursivit&eacute;. Commencez par <a href=\"\/fr\/tutoriels\/executer-fichier-sh-linux\/\">cr&eacute;er un fichier factorial.sh<\/a> :<\/p><pre class=\"wp-block-preformatted\">factorial.sh<\/pre><p class=\"wp-block-paragraph\">Le script suivant demande &agrave; l&rsquo;utilisateur de saisir un nombre, puis utilise une <strong>boucle for<\/strong> pour calculer sa factorielle.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\necho Enter the number you want to get factorial for\nread mynumber\nfactorial=1\nfor ((i=1;i&lt;=mynumber;i++))\ndo\nfactorial=$(($factorial*$i))\ndone\necho $factorial<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc73a196\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc73a196\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"382\" height=\"103\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Fenetre-de-ligne-de-commande-affichant-un-script-shell-permettant-de-calculer-la-factorielle-dun-nombre.png\/public\" alt=\"Fen&ecirc;tre de terminal affichant un script Bash qui calcule la factorielle d'un nombre.\" class=\"wp-image-51463\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Fenetre-de-ligne-de-commande-affichant-un-script-shell-permettant-de-calculer-la-factorielle-dun-nombre.png\/w=382,fit=scale-down 382w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Fenetre-de-ligne-de-commande-affichant-un-script-shell-permettant-de-calculer-la-factorielle-dun-nombre.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Fenetre-de-ligne-de-commande-affichant-un-script-shell-permettant-de-calculer-la-factorielle-dun-nombre.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 382px) 100vw, 382px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><h3 class=\"wp-block-heading\">17. Cr&eacute;er des r&eacute;pertoires<\/h3><p class=\"wp-block-paragraph\">Cr&eacute;er des r&eacute;pertoires avec Bash est tr&egrave;s simple, m&ecirc;me lorsque vous devez en g&eacute;n&eacute;rer un grand nombre rapidement. Dans cet exemple, nous allons utiliser un script Bash pour cr&eacute;er plusieurs r&eacute;pertoires contenant chacun les m&ecirc;mes sous-r&eacute;pertoires.<\/p><p class=\"wp-block-paragraph\">Commencez par cr&eacute;er un fichier nomm&eacute; <strong>directories.sh<\/strong> :<\/p><pre class=\"wp-block-preformatted\">nano directories.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nmkdir -p {Math,English,Geography,Arts}\/{notes,examresults,portfolio}<\/pre><p class=\"wp-block-paragraph\">Le script cr&eacute;e quatre r&eacute;pertoires principaux : <strong>Math<\/strong>, <strong>English<\/strong>, <strong>Geography<\/strong> et <strong>Arts<\/strong>. Il cr&eacute;e &eacute;galement les sous-r&eacute;pertoires <strong>notes<\/strong>, <strong>examresults<\/strong> et <strong>portfolio<\/strong> dans chacun d&rsquo;eux.<\/p><p class=\"wp-block-paragraph\">Si vous remplacez le symbole <strong>\/<\/strong> par <strong>_<\/strong>, le script devient :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nmkdir -p {Math,English,Geography,Arts}_{notes,examresults,portfolio}<\/pre><p class=\"wp-block-paragraph\">Voici le r&eacute;sultat qui affiche la fusion des deux r&eacute;pertoires :<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc744a68\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc744a68\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"398\" height=\"87\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-pour-creer-rapidement-un-grand-nombre-de-repertoires-La-premiere-instruction-case-du-script-Bash-indique-linterpreteur-a-utiliserpgn.png\/public\" alt=\"Script Bash permettant de cr&eacute;er rapidement un grand nombre de r&eacute;pertoires.\" class=\"wp-image-51465\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-pour-creer-rapidement-un-grand-nombre-de-repertoires-La-premiere-instruction-case-du-script-Bash-indique-linterpreteur-a-utiliserpgn.png\/w=398,fit=scale-down 398w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-pour-creer-rapidement-un-grand-nombre-de-repertoires-La-premiere-instruction-case-du-script-Bash-indique-linterpreteur-a-utiliserpgn.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-pour-creer-rapidement-un-grand-nombre-de-repertoires-La-premiere-instruction-case-du-script-Bash-indique-linterpreteur-a-utiliserpgn.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 398px) 100vw, 398px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><h3 class=\"wp-block-heading\">18. Lire des fichiers<\/h3><p class=\"wp-block-paragraph\">Pour lire un fichier en Bash, commencez par cr&eacute;er un fichier d&rsquo;exemple &agrave; l&rsquo;aide de la commande suivante :<\/p><pre class=\"wp-block-preformatted\">nano mysamplefile.txt<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y le contenu suivant :<\/p><pre class=\"wp-block-preformatted\">Out of all scripting languages, bash is the most popular one. It allows programmers to run scripts effortlessly in a variety of Linux distros.<\/pre><p class=\"wp-block-paragraph\">Cr&eacute;ez ensuite le script Bash :<\/p><pre class=\"wp-block-preformatted\">nano readfiles.sh<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y les lignes suivantes :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash  \nmyvalue=`cat mysamplefile.txt`  \necho \"$myvalue\"<\/pre><p class=\"wp-block-paragraph\">L&rsquo;ex&eacute;cution du script produit le r&eacute;sultat suivant :<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc74603c\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc74603c\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"721\" height=\"78\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affiche-un-script-Bash-destine-a-lire-le-fichier-fourni-et-a-afficher-son-contenu.png\/public\" alt=\"Une fen&ecirc;tre de ligne de commande affiche un script Bash destin&eacute; &agrave; lire le fichier fourni et &agrave; afficher son contenu\" class=\"wp-image-51461\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affiche-un-script-Bash-destine-a-lire-le-fichier-fourni-et-a-afficher-son-contenu.png\/w=721,fit=scale-down 721w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affiche-un-script-Bash-destine-a-lire-le-fichier-fourni-et-a-afficher-son-contenu.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affiche-un-script-Bash-destine-a-lire-le-fichier-fourni-et-a-afficher-son-contenu.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 721px) 100vw, 721px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><h3 class=\"wp-block-heading\">19. Afficher un fichier avec sa num&eacute;rotation de lignes<\/h3><p class=\"wp-block-paragraph\">Nous allons afficher le contenu d&rsquo;un fichier en num&eacute;rotant chaque ligne. Commencez par cr&eacute;er le fichier suivant :<\/p><pre class=\"wp-block-preformatted\">nano cars.txt<\/pre><p class=\"wp-block-paragraph\">Dans cet exemple, ajoutez les marques de voitures suivantes :<\/p><pre class=\"wp-block-preformatted\">Audi\nBMW\nBentley\nMaserati\nSeat\nVolvo<\/pre><p class=\"wp-block-paragraph\">Enregistrez le fichier, puis cr&eacute;ez un nouveau script Bash :<\/p><pre class=\"wp-block-preformatted\">nano printlines.sh<\/pre><p class=\"wp-block-paragraph\">Collez ensuite le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nmyfile='cars.txt'\ni=1\nwhile read lines; do\necho \"$i : $lines\"\ni=$((i+1))\ndone &lt; $myfile<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc7473a9\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc7473a9\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"292\" height=\"305\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-un-script-Bash-qui-affiche-le-contenu-dun-fichier-en-indiquant-le-numero-de-ligne-Tout-cela-est-realise-a-laide-dune-boucle-while-.png\/public\" alt=\"Fen&ecirc;tre de terminal affichant un script Bash qui affiche le contenu d'un fichier avec les num&eacute;ros de ligne.\" class=\"wp-image-51462\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-un-script-Bash-qui-affiche-le-contenu-dun-fichier-en-indiquant-le-numero-de-ligne-Tout-cela-est-realise-a-laide-dune-boucle-while-.png\/w=292,fit=scale-down 292w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-un-script-Bash-qui-affiche-le-contenu-dun-fichier-en-indiquant-le-numero-de-ligne-Tout-cela-est-realise-a-laide-dune-boucle-while-.png\/w=287,fit=scale-down 287w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/La-fenetre-de-ligne-de-commande-affiche-un-script-Bash-qui-affiche-le-contenu-dun-fichier-en-indiquant-le-numero-de-ligne-Tout-cela-est-realise-a-laide-dune-boucle-while-.png\/w=144,fit=scale-down 144w\" sizes=\"(max-width: 292px) 100vw, 292px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Le contenu du fichier <strong>cars.txt<\/strong> est affich&eacute; avec un num&eacute;ro devant chaque ligne gr&acirc;ce &agrave; la boucle while.<\/p><h3 class=\"wp-block-heading\">20. Supprimer des fichiers<\/h3><p class=\"wp-block-paragraph\">Pour supprimer un fichier existant, vous pouvez utiliser une instruction <strong>if<\/strong> afin de v&eacute;rifier qu&rsquo;il existe avant de le supprimer. Commencez par cr&eacute;er un script Bash :<\/p><pre class=\"wp-block-preformatted\">nano deletefiles.sh<\/pre><p class=\"wp-block-paragraph\">Le script suivant cr&eacute;e un fichier nomm&eacute; <strong>cars.txt<\/strong>, v&eacute;rifie ensuite qu&rsquo;il existe &agrave; l&rsquo;aide d&rsquo;une instruction if, puis le supprime.<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nmyfile='cars.txt'\ntouch $myfile\nif [ -f $myfile ]; then\n   rm cars.txt\n   echo \"$myfile deleted\"\nfi<\/pre><h3 class=\"wp-block-heading\">21. V&eacute;rifier si un fichier existe<\/h3><p class=\"wp-block-paragraph\">Pour v&eacute;rifier si un fichier existe, vous pouvez utiliser un test conditionnel. Dans cet exemple, nous allons utiliser une instruction <strong>if<\/strong> avec l&rsquo;option <strong>-f<\/strong>, qui permet de v&eacute;rifier qu&rsquo;un fichier existe et qu&rsquo;il s&rsquo;agit d&rsquo;un fichier ordinaire. Commencez par cr&eacute;er le fichier de script suivant :<\/p><pre class=\"wp-block-preformatted\">nano exists.sh<\/pre><p class=\"wp-block-paragraph\">Copiez et collez le script suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nMyFile=cars.txt\nif [ -f \"$MyFile\" ]; then\necho \"$MyFile exists.\"\nelse \necho \"$MyFile does not exist.\"\nfi<\/pre><p class=\"wp-block-paragraph\">L&rsquo;ex&eacute;cution du script produit le r&eacute;sultat suivant :<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc7484d5\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc7484d5\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"258\" height=\"68\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-Bash-permettant-de-verifier-si-un-fichier-donne-existe-Attention-a-la-derniere-ligne-fi-du-script-Bash-elle-indique-que-toutes-les-instructions-conditionnelles-if-sont.png\/public\" alt=\"Script Bash permettant de v&eacute;rifier si un fichier existe. Notez la derni&egrave;re ligne fi : elle marque la fin de l'instruction conditionnelle if.\" class=\"wp-image-51466\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-Bash-permettant-de-verifier-si-un-fichier-donne-existe-Attention-a-la-derniere-ligne-fi-du-script-Bash-elle-indique-que-toutes-les-instructions-conditionnelles-if-sont.png\/w=258,fit=scale-down 258w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Script-Bash-permettant-de-verifier-si-un-fichier-donne-existe-Attention-a-la-derniere-ligne-fi-du-script-Bash-elle-indique-que-toutes-les-instructions-conditionnelles-if-sont.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 258px) 100vw, 258px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><h3 class=\"wp-block-heading\">22. V&eacute;rifier les inodes et l&rsquo;utilisation du disque<\/h3><p class=\"wp-block-paragraph\">Les inodes repr&eacute;sentent des unit&eacute;s de donn&eacute;es sur un serveur physique ou virtuel. Chaque fichier texte, vid&eacute;o, r&eacute;pertoire, fichier HTML ou script correspond &agrave; un inode. Nous allons v&eacute;rifier le nombre d&rsquo;inodes dans un r&eacute;pertoire, car un trop grand nombre peut ralentir sensiblement le syst&egrave;me. Commencez par cr&eacute;er le script Bash suivant :<\/p><pre class=\"wp-block-preformatted\">nano inodesdisk.sh<\/pre><p class=\"wp-block-paragraph\">Collez le code suivant. Il affiche les inodes par ordre d&eacute;croissant ainsi que l&rsquo;utilisation du disque dans un r&eacute;pertoire donn&eacute; :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nfind . -printf \"%h\\n\" | cut -d\/ -f-2 | sort | uniq -c | sort -rn\ndu -shc * | sort -rh<\/pre><p class=\"wp-block-paragraph\">Le r&eacute;sultat s&rsquo;affiche de la mani&egrave;re suivante dans le terminal :<\/p><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc749492\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc749492\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"298\" height=\"294\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affichant-un-script-Bash-permettant-de-compter-les-inodes-et-dafficher-lutilisation-du-disque.png\/public\" alt=\"Fen&ecirc;tre de terminal affichant le r&eacute;sultat d'un script Bash qui compte les inodes et affiche l'utilisation du disque.\" class=\"wp-image-51467\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affichant-un-script-Bash-permettant-de-compter-les-inodes-et-dafficher-lutilisation-du-disque.png\/w=298,fit=scale-down 298w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Une-fenetre-de-ligne-de-commande-affichant-un-script-Bash-permettant-de-compter-les-inodes-et-dafficher-lutilisation-du-disque.png\/w=150,fit=scale-down 150w\" sizes=\"(max-width: 298px) 100vw, 298px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><p class=\"wp-block-paragraph\">Dans cet exemple, le r&eacute;pertoire contient 15 inodes et l&rsquo;ensemble des fichiers occupe 20 Ko.<\/p><h3 class=\"wp-block-heading\">23. Envoyer un e-mail<\/h3><p class=\"wp-block-paragraph\">Il est &eacute;galement possible d&rsquo;envoyer des e-mails &agrave; l&rsquo;aide de scripts Bash. Pour cela, vous devez d&rsquo;abord disposer d&rsquo;un agent de transport de courrier (MTA) fonctionnel. Sous Ubuntu 22.04, installez-le avec la commande suivante :<\/p><pre class=\"wp-block-preformatted\">sudo apt-get install mailutils<\/pre><p class=\"wp-block-paragraph\">Une fois l&rsquo;agent de transport de courrier install&eacute;, cr&eacute;ez un nouveau script Bash :<\/p><pre class=\"wp-block-preformatted\">nano mail.sh<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y le code suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\nRecipient=\"myawesomeinbox@domain.tld\"\nMysubject=\"Regarding our talk\"\nMymessage=\"Call me\"\n`mail -s $Mysubject $Recipients &lt;&lt;&lt; $Mymessage`<\/pre><p>\n\n\n<div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>Important !<\/strong> Ce script est uniquement fourni &agrave; des fins de test, car il ne fonctionne g&eacute;n&eacute;ralement pas avec des services tels que Gmail. Nous vous recommandons d&rsquo;<a href=\"\/fr\/tutoriels\/php-mail\/\">utiliser PHPMailer<\/a> &agrave; la place.\n            <\/p><\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\">24. Mettre &agrave; jour les paquets<\/h3><p class=\"wp-block-paragraph\">Il est essentiel de maintenir le syst&egrave;me et toutes ses applications &agrave; jour. Vous pouvez cr&eacute;er un script Bash pour automatiser cette t&acirc;che. Notez que ce script n&eacute;cessite les privil&egrave;ges root. Commencez par cr&eacute;er un script Bash :<\/p><pre class=\"wp-block-preformatted\">nano maintenance.sh<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y les lignes suivantes :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\napt-get update\napt-get upgrade<\/pre><p class=\"wp-block-paragraph\">Lorsque vous ex&eacute;cutez ce script, faites-le pr&eacute;c&eacute;der de la commande sudo :<\/p><pre class=\"wp-block-preformatted\">sudo bash maintenance.sh<\/pre><p>\n\n\n<div class=\"announcement-block announcement-block--important\">\n            <span class=\"announcement-block__heading\">\n                <svg width=\"24\" height=\"24\" viewBox=\"0 0 24 24\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n                    <path fill-rule=\"evenodd\" clip-rule=\"evenodd\"\n                          d=\"M12 22.5C17.799 22.5 22.5 17.799 22.5 12C22.5 6.20101 17.799 1.5 12 1.5C6.20101 1.5 1.5 6.20101 1.5 12C1.5 17.799 6.20101 22.5 12 22.5ZM13.637 7.65198C13.637 6.74791 12.9041 6.01501 12 6.01501C11.0959 6.01501 10.363 6.74791 10.363 7.65198C10.5335 9.53749 10.875 13.383 10.875 13.383C10.875 14.0043 11.3787 14.508 12 14.508C12.6213 14.508 13.125 14.0043 13.125 13.383V13.38L13.637 7.65198ZM11.9927 15.714C11.3714 15.714 10.8677 16.2177 10.8677 16.839C10.8677 17.4603 11.3714 17.964 11.9927 17.964H12.0073C12.6286 17.964 13.1323 17.4603 13.1323 16.839C13.1323 16.2177 12.6286 15.714 12.0073 15.714H11.9927Z\"\n                          fill=\"#FEA419\"\/>\n                <\/svg>\n                Important\n            <\/span>\n            <p class=\"announcement-block__content\">\n                <strong>Important !<\/strong> Le gestionnaire de paquets apt est utilis&eacute; uniquement sur les distributions bas&eacute;es sur Debian. Si vous utilisez une autre distribution, adaptez la commande en cons&eacute;quence.\n            <\/p><\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\">25. Afficher les informations du serveur<\/h3><p class=\"wp-block-paragraph\">Le script suivant affiche plusieurs informations importantes sur le serveur : la date du syst&egrave;me, sa dur&eacute;e de fonctionnement, ainsi que les statistiques d&rsquo;utilisation de la m&eacute;moire et du r&eacute;seau. Commencez par cr&eacute;er un nouveau fichier :<\/p><pre class=\"wp-block-preformatted\">nano system.sh<\/pre><p class=\"wp-block-paragraph\">Ajoutez-y le script suivant :<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">#!\/bin\/bash\necho \"Date\"\ndate\necho \"Uptime\"\nuptime\necho \"Memory Usage\"\nfree -m\necho \"Network Usage\"\nip a<\/pre><div class=\"wp-block-image\">\n<figure data-wp-context='{\"imageId\":\"6a774dc74ae7e\"}' data-wp-interactive=\"core\/image\" data-wp-key=\"6a774dc74ae7e\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" width=\"826\" height=\"323\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on--pointerdown=\"actions.preloadImage\" data-wp-on--pointerenter=\"actions.preloadImageWithDelay\" data-wp-on--pointerleave=\"actions.cancelPreload\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-qui-affiche-des-informations-generales-sur-le-systeme-date-temps-de-fonctionnement-memoire-et-utilisation-du-reseau.png\/public\" alt=\"Script Bash affichant des informations g&eacute;n&eacute;rales sur le syst&egrave;me : la date, la dur&eacute;e de fonctionnement, l'utilisation de la m&eacute;moire et l'activit&eacute; du r&eacute;seau.\" class=\"wp-image-51469\" srcset=\"https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-qui-affiche-des-informations-generales-sur-le-systeme-date-temps-de-fonctionnement-memoire-et-utilisation-du-reseau.png\/w=826,fit=scale-down 826w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-qui-affiche-des-informations-generales-sur-le-systeme-date-temps-de-fonctionnement-memoire-et-utilisation-du-reseau.png\/w=300,fit=scale-down 300w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-qui-affiche-des-informations-generales-sur-le-systeme-date-temps-de-fonctionnement-memoire-et-utilisation-du-reseau.png\/w=150,fit=scale-down 150w, https:\/\/imagedelivery.net\/LqiWLm-3MGbYHtFuUbcBtA\/wp-content\/uploads\/sites\/46\/2026\/08\/Un-script-Bash-qui-affiche-des-informations-generales-sur-le-systeme-date-temps-de-fonctionnement-memoire-et-utilisation-du-reseau.png\/w=768,fit=scale-down 768w\" sizes=\"(max-width: 826px) 100vw, 826px\" \/><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" data-wp-bind--aria-label=\"state.thisImage.triggerButtonAriaLabel\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on--click=\"actions.showLightbox\" data-wp-style--right=\"state.thisImage.buttonRight\" data-wp-style--top=\"state.thisImage.buttonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/div><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusion<\/h2><p class=\"wp-block-paragraph\">Les scripts Bash sous Linux sont particuli&egrave;rement utiles pour regrouper des suites de commandes complexes dans un seul script. M&ecirc;me si vous utilisez Linux de mani&egrave;re occasionnelle, vous pouvez gagner du temps en automatisant des t&acirc;ches simples, comme la mise &agrave; jour des paquets ou l&rsquo;utilisation de la commande sleep.<\/p><p class=\"wp-block-paragraph\">Dans ce tutoriel, nous avons pr&eacute;sent&eacute; les bases des scripts Bash et expliqu&eacute; comment les utiliser pour automatiser des t&acirc;ches et gagner en productivit&eacute;. Nous avons &eacute;galement rassembl&eacute; 25 exemples de scripts Bash simples que vous pouvez tester.<\/p><p class=\"wp-block-paragraph\">Nous esp&eacute;rons que cet article vous a permis de mieux comprendre le fonctionnement des scripts Bash.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Bash, ou &laquo; Bourne-again shell &raquo;, est l&rsquo;un des shells et langages de commande les plus populaires aupr&egrave;s des utilisateurs de VPS Linux. Lanc&eacute; en 1989, il est depuis devenu le shell par d&eacute;faut de la plupart des distributions Linux. Les scripts Bash permettent aux utilisateurs et aux administrateurs syst&egrave;me d&rsquo;automatiser des processus et d&rsquo;&eacute;conomiser [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/fr\/tutoriels\/exemple-script-bash\/\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":190,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"rank_math_title":"25 exemples de scripts Bash sous Linux pour d\u00e9buter","rank_math_description":"D\u00e9couvrez 25 exemples de scripts Bash sous Linux pour apprendre les bases, automatiser des t\u00e2ches et cr\u00e9er vos premiers scripts \u00e9tape par \u00e9tape.","rank_math_focus_keyword":"exemples de scripts Bash","footnotes":""},"categories":[5844],"tags":[],"class_list":["post-51490","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"hreflangs":[{"locale":"en-US","link":"https:\/\/www.hostinger.com\/tutorials\/bash-script-example\/","default":1},{"locale":"id-ID","link":"https:\/\/www.hostinger.com\/id\/tutorial\/contoh-bash-script\/","default":0},{"locale":"en-PH","link":"https:\/\/www.hostinger.com\/ph\/tutorials\/bash-script-example\/","default":0},{"locale":"en-MY","link":"https:\/\/www.hostinger.com\/my\/tutorials\/bash-script-example\/","default":0},{"locale":"en-GB","link":"https:\/\/www.hostinger.com\/uk\/tutorials\/bash-script-example\/","default":0},{"locale":"en-IN","link":"https:\/\/www.hostinger.com\/in\/tutorials\/bash-script-example\/","default":0},{"locale":"en-CA","link":"https:\/\/www.hostinger.com\/ca\/tutorials\/bash-script-example\/","default":0},{"locale":"en-AU","link":"https:\/\/www.hostinger.com\/au\/tutorials\/bash-script-example\/","default":0},{"locale":"en-NG","link":"https:\/\/www.hostinger.com\/ng\/tutorials\/bash-script-example\/","default":0},{"locale":"fr-FR","link":"https:\/\/www.hostinger.com\/fr\/tutoriels\/exemple-script-bash","default":0}],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/51490","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/users\/190"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/comments?post=51490"}],"version-history":[{"count":8,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/51490\/revisions"}],"predecessor-version":[{"id":51547,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/posts\/51490\/revisions\/51547"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/media?parent=51490"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/categories?post=51490"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/fr\/tutoriels\/wp-json\/wp\/v2\/tags?post=51490"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}