logo

Ensemble – $VARIABLE en bash

Dans le monde des scripts bash, vous rencontrerez peut-être l’ensemble d’expressions – $VARIABLE. Mais qu'est-ce que ça veut dire?

À la base, set – $VARIABLE est utilisé pour diviser la valeur d'une variable bash en mots séparés, en utilisant le séparateur de champ interne (IFS) comme délimiteur. Par exemple, si VARIABLE a la valeur a b c, alors l'exécution de set – $VARIABLE définirait les paramètres de position sur a, b et c.



comment sortir d'une boucle while java

Cela peut ne pas sembler particulièrement utile à première vue, mais cela peut s’avérer un outil puissant lorsqu’il est utilisé dans le bon contexte. Un cas d'utilisation courant consiste à traiter les arguments de ligne de commande transmis à un script bash. Lorsque vous exécutez un script bash, les paramètres de position (c'est-à-dire , , etc.) représentent les arguments transmis au script. En utilisant set – $VARIABLE, vous pouvez facilement diviser un seul argument en plusieurs mots, vous permettant ainsi de les traiter plus facilement.

Voici un exemple de la façon dont cela pourrait être utilisé :

#!/bin/bash # Set the value of VARIABLE to the first command-line argument VARIABLE='' # Split the value of VARIABLE into separate words set - $VARIABLE # Loop over the words for word in '$@'; do echo '$word' done>

Si vous enregistrez ce script sous example.sh et exécutez-le comme ceci :

./example.sh 'a b c'>

Sortir:



a b c>

Boucle sur les éléments d'une liste stockés dans une variable

Un autre cas d'utilisation courant de set – $VARIABLE consiste à parcourir les éléments d'une liste stockée dans une variable. Par exemple:

# Set the value of VARIABLE to 'a b c' VARIABLE='a b c' # Split the value of VARIABLE into separate words set - $VARIABLE # Loop over the words for word in '$@'; do echo '$word' done>

Sortir:

a b c>

Il convient de noter que set – $VARIABLE ne fonctionne que si la valeur de VARIABLE est une seule chaîne. Si VARIABLE est un tableau, vous devrez utiliser une approche différente. Une option consiste à utiliser la syntaxe printf '%s ' ${VARIABLE[@]}, qui étend le tableau en une série de mots distincts, chacun séparé par un caractère de nouvelle ligne.



Voici un exemple de la façon dont cela pourrait être utilisé :

questions d'entretien en langage Java
#!/bin/bash # Set the value of VARIABLE to an array containing 'a', 'b', and 'c' VARIABLE=('a' 'b' 'c') # Expand the array into a series of separate words set - $(printf '%s
' '${VARIABLE[@]}') # Loop over the words for word in '$@'; do echo '$word' done>

Sortir:

a b c>

Conclusion

En conclusion, set – $VARIABLE est une fonctionnalité bash utile qui vous permet de diviser la valeur d'une variable en mots séparés, en utilisant l'IFS comme délimiteur. Il peut être utilisé pour traiter des arguments de ligne de commande ou pour parcourir les éléments d'une liste stockée dans une variable. Bien que cela ne fonctionne qu'avec des chaînes uniques, il existe des approches alternatives qui peuvent être utilisées avec des tableaux. Comprendre comment fonctionne set – $VARIABLE et quand l'utiliser peut être un ajout précieux à votre boîte à outils de script bash.