Comment écrire des scripts Bash pour automatiser Linux

Les scripts Bash sont une compétence utile à apprendre en tant qu’utilisateur Linux. Même en tant que débutant, connaître cette compétence peut faire la différence entre tirer pleinement parti de votre machine et tout faire à la main. C’est pourquoi, dans cet article, nous allons vous apprendre à écrire des scripts bash pour automatiser Linux et prendre le contrôle total de votre bureau. Nous allons passer en revue les bases des scripts avec le shell Bash, les bases de ce qui fait un script, comment les exécuter sur votre système, ce que signifient shebangs, et plus encore!

Types de scripts

Il existe de nombreux types de scripts différents. Principalement: SH et BASH. Ces extensions de fichier sont importantes, car l’extension de fichier indique à l’interpréteur comment l’exécuter. Si un fichier est un fichier SH, il peut être exécuté dans n’importe quel shell, pas seulement dans Bash. Cela signifie qu’un script écrit pour Bash sur Linux peut s’exécuter sur Mac, BSD et d’autres endroits avec des shells similaires.

Les scripts utilisant l’extension de fichier BASH sont uniquement destinés à s’exécuter dans Bash. Qu’il suffise de dire que votre script avec l’extension de fichier bash ne fonctionnera pas dans le shell Fish sous Linux, ou dans l’un des autres shells similaires disponibles.

  Comment configurer le serveur RocketChat sur Linux

Elle frappe

Certains scripts n’utilisent pas du tout d’extensions de fichiers. Au lieu de cela, ils utilisent un shebang pour permettre à l’interprète de comprendre à quoi sert le script et comment l’exécuter. Lors de l’écriture d’un script, le shebang vient TOUJOURS en premier. Si un shebang est absent, souvent un script refusera de s’exécuter, surtout si aucune extension de fichier n’est utilisée.

Il y a beaucoup à apprendre sur les shebangs, mais les débutants n’ont pas à s’en soucier. Ils ne s’avèrent utiles que pour les utilisateurs avancés de Bash, qui cherchent à écrire des outils Bash incroyablement complexes. En tant que débutants, le seul shebang auquel les utilisateurs doivent penser est le standard: #! / Bin / bash

Créer un script Bash

De nombreux débutants confondent les scripts bash avec la programmation réelle. Le but principal du script dans bash est d’enchaîner de nombreuses commandes ensemble, faisant effectivement de longues choses compliquées sans avoir besoin d’écrire tout dans le shell du terminal. Si vous essayez de faire de la programmation sérieuse dans Bash, arrêtez et envisagez un langage de programmation réel utilisé sur Linux comme Python.

Pour commencer, ouvrez un terminal et entrez la commande suivante:

nano myfirstbashscript

Cela fait apparaître l’éditeur de texte Nano. À l’intérieur de nano, ajoutez le shebang, pour aider l’interprète à identifier quoi faire avec le script.

#!/bin/bash

De là, on peut tout faire! Par exemple: un utilisateur Ubuntu peut créer un simple script de mise à jour en ajoutant les lignes:

sudo apt update;sudo apt upgrade -y

Autre exemple: créez un script ping continu à exécuter en arrière-plan, si vous êtes préoccupé par la vitesse de votre réseau.

ping google.com

Ajoutez toutes les commandes que vous souhaitez au script! Faire preuve de créativité!

  Comment vérifier les emplacements de RAM vides sur votre PC Windows 10

Après avoir ajouté ce que vous voulez à votre script, enregistrez-le avec nano en utilisant CTRL + O.

Une fois le script créé, il est temps de mettre à jour les autorisations. Dans un terminal, faites:

sudo chmod +x myfirstbashscript

Exécution de scripts

Pour exécuter un script shell, ouvrez un terminal et faites:

sudo sh script.sh

Pour exécuter des fichiers bash, essayez:

sudo bash script.bash

Sinon, n’importe quel script, quelle que soit l’extension du fichier, peut facilement s’exécuter avec ./filename dans le terminal.

Les trois façons d’exécuter des scripts fonctionnent très bien. Cela étant dit, utiliser ./filename est le pire moyen, car les scripts ne s’exécutent souvent pas à moins que le script bash ne dispose des autorisations appropriées. Définissez les autorisations avec:

sudo chmod +x script

Faire de votre script un binaire

Pour exécuter votre script en tapant simplement le nom du fichier dans le terminal, vous devrez en faire un binaire. Pour ce faire, utilisez la commande chmod pour le rendre exécutable.

sudo chmod +x

Lorsque le script est marqué comme exécutable, il est temps de déplacer le script pour qu’il soit accessible dans le chemin de l’utilisateur. Faites cela avec la commande MV. Vous pouvez également utiliser la commande CP au lieu de la commande move si vous souhaitez conserver une sauvegarde de votre script dans son emplacement d’origine.

sudo mv /location/of/script /usr/bin/

ou

sudo cp /location/of/script /usr/bin/

Ensuite, exécutez le script nouvellement déplacé à l’intérieur du terminal, de n’importe où en tapant simplement le nom de celui-ci dans le terminal. Par exemple: vous avez utilisé YouTube-DL pour écrire un script d’extraction automatique de YouTube et l’avez placé dans / usr / bin / pour un accès facile.

  Les billets de circulation apparaissent-ils sur les vérifications des antécédents criminels?

Pour exécuter ledit script, vous feriez:

youtubescript

C’est tout!

Conclusion

Apprendre la langue de bash est un outil utile. Sans cela, les administrateurs système et les geeks de terminaux se retrouveraient à asservir un terminal pendant des heures à la fois. Au lieu de cela, ils peuvent écrire des scripts bash pour automatiser Linux. En apprenant à exploiter la puissance de Bash, vous écrivez toutes ces opérations complexes et vous les exécutez rapidement avec un script.

Le shell est beau, et plus vous en apprendrez à son sujet, plus vous en apprendrez sur leurs propres systèmes Linux, comment les automatiser et même améliorer le fonctionnement des choses en interne! Le ciel est la limite avec bash, il suffit d’un peu de créativité!