(→Variables bash) |
|||
| Ligne 146 : | Ligne 146 : | ||
</pre> | </pre> | ||
| - | =chercher et remplacer dans une variable= | + | =chercher et remplacer une sous-chaîne dans une variable= |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| + | Il y a 2 possibilités: la première occurrence ou toutes les occurrences: | ||
| + | <pre> | ||
| + | ${VAR/recherche/remplacé par} # première occurrence | ||
| + | ${VAR//recherche/remplacé par} # toutes les occurrences | ||
| + | </pre> | ||
| + | </br> | ||
| + | Dans tous les cas, c'est la sous-chaîne la plus grande correspondant à "recherche" qui sera remplacée. <br> | ||
| + | <pre> | ||
VAR=abcABC123ABCabc | VAR=abcABC123ABCabc | ||
| - | echo ${VAR/b*c/Z} | + | echo ${VAR/b*c/Z} |
| + | </pre> | ||
| + | <pre> | ||
| + | aZ | ||
| + | </pre> | ||
On peut aussi viser spécifiquement le début ou la fin d'une chaîne : | On peut aussi viser spécifiquement le début ou la fin d'une chaîne : | ||
| Ligne 208 : | Ligne 212 : | ||
echo ${VAR?pas definie} # rien, valeur nulle autorisée | echo ${VAR?pas definie} # rien, valeur nulle autorisée | ||
echo ${VAR:?valeur nulle} # -bash: VAR: pas definie (sur stderr) | echo ${VAR:?valeur nulle} # -bash: VAR: pas definie (sur stderr) | ||
| - | |||
| - | |||