Un petit peu de scripting en bash aujourd'hui avec  ${...} 

Prenons une fonction comme substr disponible en PHP, C, C++, ... qui consiste à prendre une chaîne de caractères (ou string) et renvoie tout ou partie de cette chaîne (que l'on appelle sous-chaîne d'où le substring).
Cela permet par exemple de récupérer les 10 premières (ou dernières) lettres d'un mot ou bien d'extraire les lettres présentes entre la 5ème et la 20ème.

Faire cela en bash est très simple grâce à 
 ${NOM_DE_VARIABLE:INDICE_DE_DEBUT:NOMBRE_DE_CARACTERES_A_PRENDRE}  :

ma_variable_originale="abcdefghijklmnopqrstuvwxyz"
ma_variable=${ma_variable_originale:0:10}

La première variable contient l'alphabet.
La seconde va se voir affecter une sous-chaîne de la première variable en partant du premier caractère (les indices commençant à 0 ; comprendre 0 pour le premier caractère, 1 pour le second, etc.) et en prenant uniquement 10 caractères à partir de l'indice 0. Soit au final les 10 premiers caractères de la première variable.

Si nous affichons le contenu de la deuxième variable...
echo "$ma_variable"
... nous obtenons
abcdefghij

Tag(s) : #bash

Partager cet article

Repost 0
Pour être informé des derniers articles, inscrivez vous :