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!
Table des matières
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.
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é!
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.
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é!