Bash Comment exécuter une commande dans une variable?
On novembre 22, 2021 by adminLes scripts Bash peuvent être créés de différentes manières et la plupart d’entre nous sont familiers avec l’exécution des commandes simples dans un script Bash. Cependant, ces commandes peuvent également être encapsulées dans les variables de Bash. Ce processus est connu sous le nom de substitution de commande et est généralement utilisé pour stocker la sortie d’une commande dans une variable, de sorte que vous n’ayez pas à exécuter cette commande explicitement encore et encore, mais que vous puissiez simplement accéder à cette variable pour obtenir la sortie de cette commande quand vous le souhaitez. Dans cet article, nous allons vous montrer comment cela peut être fait.
Note : Tous les scénarios démontrés ci-dessous ont été réalisés sur Ubuntu 20.04. Cependant, ils fonctionneront exactement de la même manière avec toute autre saveur de Linux également.
Méthode d’exécution d’une commande dans une variable en Bash:
Pour démontrer la méthode d’exécution d’une commande dans une variable en Bash, nous allons vous présenter trois scénarios différents qui sont les suivants:
Exécution de la commande « echo » stockée dans une variable:
C’est le scénario le plus simple dans lequel notre objectif est d’exécuter la commande echo qui est stockée dans une variable. Pour que cela se produise, vous devrez suivre la série d’étapes mentionnées ci-dessous:
Etape # 1 : Créer un script Bash :
Vous devez créer un Bash Script dans votre dossier Home pour lequel vous devez cliquer sur l’icône du gestionnaire de fichiers comme vous pouvez le voir sur l’image suivante:
Prenez maintenant n’importe quel espace dans votre dossier Home et faites un clic droit dessus pour lancer un menu. Sélectionnez l’option Nouveau document dans ce menu, puis choisissez l’option Document vide dans le menu en sous-cascade. Vous créerez ainsi un nouveau document dans votre dossier d’accueil. Renommez maintenant ce document nouvellement créé avec le nom de votre choix suivi de l’extension .sh. Dans notre cas, nous l’avons nommé CommandVar.sh.
Pour écrire un script Bash dans ce fichier, double-cliquez dessus pour l’ouvrir et tapez ensuite le script montré dans l’image ci-dessous dans votre fichier Bash. Ici, la première ligne du script c’est-à-dire « #!/bin/bash » montre que ce fichier est en fait un fichier Bash. Ensuite, nous avons créé une variable nommée « test » et lui avons attribué la valeur « $(echo « Hi there ! ») ». Chaque fois que vous voulez stocker une commande dans une variable, vous devez taper cette commande précédée du symbole « $ ». Dans ce cas, nous voulions stocker la commande « echo » dans la variable « test », nous avons donc simplement tapé la commande « echo » suivie d’un message aléatoire, nous l’avons mise entre crochets et nous avons placé le symbole « $ » devant. Donc maintenant, si nous voulons exécuter cette commande « echo », nous devrons accéder à la variable « test ». Par conséquent, pour vérifier si la commande « echo » stockée dans la variable « test » peut être exécutée avec succès ou non, nous avons imprimé la sortie de la variable « test » sur le terminal en utilisant une autre commande « echo ». Après avoir tapé ce script, vous devez enregistrer votre fichier et le fermer.
Étape # 2 : Exécution du script Bash via le terminal:
Maintenant, vous devez exécuter ce script via le terminal. Ainsi, ouvrez le terminal dans Ubuntu 20.04 et tapez la commande suivante dans celui-ci:
Lorsque vous appuierez sur la touche Entrée pour exécuter cette commande, vous pourrez voir la sortie suivante sur votre terminal. Ici, la partie surlignée de la sortie est la sortie de la commande « echo » qui a été stockée dans la variable « test ».
Exécution de la commande « seq » stockée dans une variable:
Dans ce scénario, nous allons imprimer une séquence de chiffres en utilisant la commande « seq » stockée dans une variable. Pour que cela se produise, nous allons modifier le script Bash créé ci-dessus en effectuant les étapes suivantes :
Étape # 1 : Modification du script Bash créé ci-dessus :
Ouvrir le fichier Bash que vous avez créé dans la méthode ci-dessus et y taper le script suivant. Ici, nous avons créé une variable nommée « séquence ». Notre objectif est d’imprimer les nombres de 1 à 10 en utilisant la commande « seq ». Pour ce faire, nous avons attribué la valeur « $(seq 1 10) » à la variable « sequence ». Vous pouvez également spécifier toute autre plage de nombres de votre choix si vous le souhaitez. Le premier chiffre après la commande « seq » indique la limite inférieure de la séquence, tandis que le deuxième chiffre fait référence à la limite supérieure. Après avoir tapé ce script, enregistrez votre fichier et fermez-le.
Étape # 2 : Exécution du script Bash modifié via le terminal :
Exécutez maintenant votre script Bash de la même manière que celle expliquée ci-dessus et vous pourrez voir la séquence spécifiée sur votre terminal comme le montre l’image ci-dessous :
Exécution de la commande ‘pwd’ stockée dans une variable:
Vous pouvez également imprimer votre répertoire de travail en faisant usage de la commande « pwd » stockée dans une variable. Pour le démontrer, nous allons modifier encore une fois le script Bash créé ci-dessus en suivant les étapes mentionnées ci-dessous:
Étape # 1 : Modifier le script Bash créé ci-dessus:
Ouvrir le fichier Bash que vous venez de modifier, puis y taper le script présenté dans l’image suivante. Dans ce script, nous avons créé une variable nommée « working_directory » et lui avons attribué la valeur « $(pwd) ». La commande « pwd » va simplement stocker son résultat, c’est-à-dire le répertoire de travail actuel, dans la variable « working_directory ». Pour vérifier si la commande « pwd » a été correctement exécutée ou non, nous avons imprimé la valeur de la variable « working_directory » sur le terminal en utilisant la commande « echo ». Maintenant, enregistrez ce fichier et fermez-le après y avoir tapé le script Bash modifié.
Étape # 2 : Exécution du script Bash modifié via le terminal:
Exécutez maintenant ce script Bash de la même manière que celle expliquée ci-dessus. La sortie de ce script Bash vous montrera le répertoire de travail actuel. La partie surlignée de la sortie est en fait, la sortie de la commande « pwd ».
Conclusion:
Cet article donne une très bonne idée de la façon dont vous pouvez exécuter une commande qui est stockée dans une variable dans Bash et peut obtenir la même sortie que vous auriez obtenue si vous exécutez la commande indépendamment.
Laisser un commentaire