nouvelles
Serverspace Technologies aux Emirats Arabes Unis : Lancement de Falconcloud
RF
8 août 2023
Mise à jour août 8, 2023

Linux Bases de Bash. Guide de script

Linux Entretien

Introduction

Les scripts Bash constituent un utilitaire précieux pour les tâches modernes et complètes dans les systèmes d'administration tels que Linux et macOS. Sa syntaxe simple, son intégration étroite avec le système d'exploitation et son efficacité dans la gestion des fonctionnalités spécifiques au shell offrent des avantages distincts pour des cas d'utilisation spécifiques.

Avantages des scripts bash

  • Automatisation simplifiée : les scripts Bash offrent une approche légère et intuitive pour automatiser les tâches répétitives et gérer les responsabilités d'administration du système. Ils exécutent rapidement des séquences de commandes, optimisant des tâches telles que les sauvegardes, la gestion des journaux et la configuration des utilisateurs ;
  • Intégration transparente du système : en tant que shell par défaut sur la plupart des systèmes de type Unix, Bash s'intègre de manière transparente au système d'exploitation sous-jacent. Cette intégration étroite permet un accès facile aux utilitaires système, aux variables d'environnement et aux informations système, rationalisant les opérations qui impliquent des tâches liées au système ;
  • Efficacité de la ligne de commande : Bash excelle dans la gestion de l'interface de ligne de commande, ce qui le rend compétent dans des tâches telles que la manipulation de texte, le traitement de fichiers et la navigation dans les répertoires. Sa prise en charge des canaux, des redirections et d'autres fonctionnalités spécifiques au shell améliore encore ses capacités ;
  • Rapid Prototypage et test : avec sa syntaxe simple et son retour immédiat lors de l'exécution de la ligne de commande, Bash facilite rapid prototypage et test d'idées et de solutions. Cette agilité s'avère précieuse pour les correctifs rapides et les scripts temporaires ;
  • Accessible pour les administrateurs système : les scripts Bash sont accessibles aux administrateurs système, même sans programme étenduramconnaissances. Cette accessibilité permet aux administrateurs système de créer des solutions personnalisées et d'automatiser facilement les tâches ;
  • Optimal Shell Built-ins : Bash fournit des commandes intégrées hautement optimisées pour les performances, ce qui le rend efficace pour les tâches à petite échelle et répétitives. Cette fonctionnalité permet aux scripts Bash d'exécuter certaines opérations plus rapidement par rapport aux programmes de niveau supérieur.ramlangues ming;
  • Portabilité de la plate-forme : bien qu'il soit principalement utilisé sur des systèmes de type Unix, Bash est disponible sur diverses plates-formes, notamment Linux, macOS et Windows (via Cygwin ou Windows Sous-système pour Linux). Cette portabilité permet aux scripts Bash d'être utilisés dans divers environnements.

En conclusion, les points forts des scripts Bash résident dans sa simplicité, son intégration étroite avec les systèmes basés sur Unix et sa maîtrise des tâches spécifiques au shell. Il excelle dans l'automatisation des tâches d'administration système, fonctionne de manière transparente avec les utilitaires de ligne de commande et fournit des solutions rapides pour le traitement de texte et la manipulation de fichiers. Son accessibilité et sa capacité à prototyper rapidement des idées en font un excellent choix pour les administrateurs système et les tâches qui nécessitent une approche de script concise et efficace.

Exigences

  • Droits root ;
  • Debian 11 ou version supérieure ;
  • Plusieurs connaissances sur les OS de travail ;
  • Connexion Internet.

Démarrez votre moteur

Nous travaillerons dans VPS machine par notre fournisseur Serverspace, que vous pouvez commander sur le site. Et utilise Debian 11 système d'exploitation avec shell bash. Allez tout d'abord dans le panneau de contrôle de Serverspace et choisissez la plate-forme nécessaire pour travailler :

Control page
Capture d'écran №1 — Page de contrôle

Vous pouvez voir divers centres de données dans différents pays, choisir selon votre point de vue et vos objectifs, de préférence à proximité de votre emplacement. Ensuite, vous pouvez regarder le système d'exploitation et en choisir un, pour notre exemple, nous avons eu l'air classique.

price
Capture d'écran №2 — Prix

Après choix des ressources pour votre machine vous pouvez voir le prix et click sur Commander , attendez la fin de la configuration du serveur. Après cela, entrez vos informations d'identification pour vous connecter au système via la commande ci-dessous.

ssh root@162.64.253.1
Login
Capture d'écran №3 — Connexion

Rappel! Vous devez remplacer votre adresse IP et entrer le mot de passe sur le compte.

Créer le premier script

Félicitations, nous y sommes. Et déjà utilisé l'interpréteur bash et le shell. Le signe # ou si vous vous connectez par utilisateur $ cela signifie que la machine doit déjà lire et traiter la commande entrante dans bash. Dans un deuxième temps, nous installons l'éditeur de texte pour une utilisation plus confortable de notre fichier de script :

apt install nano

Vous pouvez également utiliser plus facilement et plus de complexité des éditeurs de texte comme : gedit, vim, Emacs, etc. Choisissez ce que vous voulez pour votre travail confortable. Créons notre premier script. Pour cela, vous devez trouver le chemin vers bash dans votre système, par défaut c'est / bin / bash, mais vous pouvez le trouver par commande :

cd / && which bash

L'étape suivante créera un fichier de script avec la commande ci-dessous :

nano /etc/script.sh

Et entrez ces lignes :

#!/bin/bash
echo "My first script in bash!"
Firts script
Capture d'écran №4 — Premier script

Dans la première ligne, nous indiquons l'interpréteur pour le script, écrivez votre chemin comme nous l'avons connu ci-dessus, mais dans 99% des cas, nous avons le chemin par défaut. Sur la ligne ci-dessous, nous pouvons voir la commande echo qui affichait à l'écran notre texte. Corriger le mod en exécutable :

cd etc && chmod +x script.sh

Vous pouvez maintenant démarrer votre script par le chemin du fichier ou en utilisant la commande ci-dessous :

sh script.sh
Firts execution
Capture d'écran №5 — Première exécution

Nous y voilà! Nous avons d'abord écrit un script, mais examinons la complexité et les détails utiles du processus de script.

Arguments

Il y a des données d'entrée qui doivent être traitées par le script, des données qui sont saisies par l'utilisateur ou transférées par un autre utilitaire, service ou script. Pour ça en programming language il y a définition — arguments ou données nécessaires pour traiter par algorithme. Regardons l'exemple :

Pour cela, créez un nouveau fichier et ouvrez-le en une seule commande :

nano /etc/price.sh && chmod +x /etc/price.sh

Écrivez le script ci-dessous :

#!/bin/bash
echo "My suggested price is $1"

Explicationnation: Dans ce script, nous utilisons un argument et l'indiquons par le signe $K, où K est un nombre d'arguments entrants. Le $0 est toujours le nom du script en cours d'exécution, $1, $2, etc. C'est juste une liste de données saisies. Exécutons-le !

sh /etc/price.sh 4333$
Price script
Capture d'écran №6 — Script de prix

Vous remarquerez peut-être qu'une partie vide du raw affiché s'est produite car nous ne fournissons pas d'erreur et avons un bogue ! Faisons un mécanisme de vérification :

nano /etc/price.sh

Et entrez ce code :

#!/bin/bash
if  [ "$1" -z]; then
echo "You entering data don't accordance rule!"
exit 1
fi
echo "My suggested price is $1"

Explicationnation: nous ajoutons une fonction de vérification des données saisies par la construction if-then-else. Si c'est la syntaxe de la commande de condition de démarrage, que nous écrivons et indiquons le filtre pour la variable. Dans ce cas on utilise —z option, ce qui signifie que ce champ est vide. Ensuite, nous avons écrit puis commande qui indique une action si la déclaration ci-dessus était vraie. Dans notre cas, nous avons affiché un message d'erreur et utilisé sortie 1 - commande pour le programme terminéram et indiquer une erreur. Commençons et vérifions :

sh /etc/price.sh 44$ && sh /etc/price.sh
Fix script
Capture d'écran №7 — Corriger le script

Bien! Mais si nous devons utiliser des données de préparation dans le script ? A cet effet, nous avons variable!

Variables

Ils représentent des cellules de stockage, qui enregistrent des informations et permettent de les utiliser en les mentionnant dans un script. Déclaration de variable : les variables dans Bash sont déclarées sans utiliser de mots-clés, en attribuant simplement une valeur à une variable. Par exemple:

name="John" age=30

Les variables dans Bash prennent en charge une variété de types de données grâce au typage dynamique. Les noms de variables doivent commencer par une lettre ou le symbole "_", les lettres, les chiffres sont autorisés. Facilitez la compréhension du code en utilisant des noms de variables significatifs et utilisez le symbole dollar "$" pour accéder à leurs valeurs, par exemple :

echo "Hello, $name!"

La valeur de la variable peut être réaffectée, modifiée à tout moment de l'exécution du script :

count=5
echo "Current value of count: $count"
count=10
echo "New value of count: $count"

Lecture d'une valeur d'un utilisateur : à l'aide de la commande read, vous pouvez lire une valeur d'un utilisateur et l'affecter à une variable :

read -p "Enter your price: " price

echo "Awwww, $price?"

Suppression d'une variable : pour supprimer une variable, utilisez la commande unset :

unset name

Exporter une variable : si une variable doit être mise à la disposition des sous-processus, vous pouvez utiliser la commande d'exportation :

export MY_VARIABLE="price"

Les variables dans Bash jouent un rôle important lors de l'écriture de scripts et de l'automatisation de tâches, vous permettant de stocker et de traiter des données tout au long de l'exécution d'un programme.ram ou commandes.

Structures de contrôle

Dans tout script, il existe un chemin logique par lequel les informations passent, filtrent, changent de valeur et donnent un résultat. Tout cela est possible grâce aux structures de contrôle, qui ajoutent des branches et des capacités de choix. Il y a des cycles, des constructions conditionnelles, etc. Un exemple simple que nous expliquons ci-dessus à propos de la construction if-then-else. Celle couramment utilisée pour une structure simple ou à deux ou trois branches et utilisée :

if [ condition ]; then
statement-1
elif [ condition-2 ]; then
statement-2
fi

Dans cet exemple, nous voyons 3 branches, mais que devons-nous faire si nous avons une liste de conditions et un parameter? Pour cela, nous pouvons utiliser la construction switch-case. Tous les sens incluent dans notre parameter comparer à d'autres dans la liste, donc exécuter l'action conformément à la réponse. Par exemple:

read -p "What is machine you search for? " car
case "$car" in
"Volkswagen" )
price="3000$"
;;
"BMW" )
price="4000$"
;;
*)
price="we don't know"
esac
echo "You requesting cost of car: $price"

Entrez cela dans le fichier comme nous le faisons avant! Et exécutez-le :

./etc/price.sh
Example in text editor
Capture d'écran №8 — Exemple dans l'éditeur de texte

Après le démarrage, vérifions :

Start example
Capture d'écran №9 — Exemple de démarrage

D'accord, ce travail ! Il y a le problème suivant, certaines commandes que nous devons exécuter un certain nombre de fois ou jusqu'à ce que les conditions soient remplies. Pour cela nous utilisons des cycles !

Cycles

Nous pouvons utiliser cycle pour lequel nous permet d'itérer certaines commandes pour chaque objet en séquence, par exemple :

cars=("Toyota" "Honda" "Ford" "BMW" "Tesla")
for ((i=0; i<${#cars[@]}; i++))
do
echo "Car $((i+1)): ${cars[i]}"
done

Ce code nous permet d'itérer indiquer la valeur un certain nombre de fois. in = 0 la syntaxe indique la valeur de départ, je<${#voitures[@]} c'est la condition, i++ c'est la commande si la condition est conforme à la valeur logique oui. Ensuite, faites la commande à faire après la condition d'achèvement dans notre exemple, c'est echo ainsi que fait signifie cycle terminé. Testons :

Start example
Capture d'écran №10 — Exemple de démarrage

Le cycle while dans l'exemple :

cars=("Toyota" "Honda" "Ford" "BMW" "Tesla")
count=1
while [ $count -le ${#cars[@]} ]
do
echo "Car $count: ${cars[$((count-1))]}"
((count++))
done

Conclusion

Les scripts Bash se distinguent par leur convivialité nature, intégration fluide dans les systèmes basés sur Unix et aptitude à gérer les tâches spécifiques au shell. Il brille par l'automatisation des tâches d'administration système, l'interaction transparente avec les utilitaires de ligne de commande et la fourniture rapide de solutions pour le traitement de texte et la manipulation de fichiers. Son accessibilité et sa flexibilité en font l'option préférée des administrateurs système qui s'attaquent à des tâches nécessitant une approche de script concise et efficace. La maîtrise des scripts Bash permet aux administrateurs d'augmenter la productivité, de rationaliser la gestion des tâches et de déverrouiller toutes les fonctionnalités de Linux et les systèmes macOS, culminatdans un environnement informatique plus efficace et plus productif.

Voter:
5 sur 5
Note moyenne : 5
Noté par : 2
1101 CT Amsterdam Pays-Bas, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300
Nous utilisons des cookies pour rendre votre expérience sur le Serverspace meilleur. En poursuivant votre navigation sur notre site, vous acceptez nos
Utilisation des cookies ainsi que Politique de confidentialité.