linux:bash
Différences
Ci-dessous, les différences entre deux révisions de la page.
Prochaine révision | Révision précédente | ||
linux:bash [2021/08/31 14:44] – créée t0mux | linux:bash [2024/01/05 05:30] (Version actuelle) – modification externe 127.0.0.1 | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
Bourne Again SHell | Bourne Again SHell | ||
- | ===== echo ===== | + | ===== Variables - découpage |
+ | Il y a une syntaxe au sein de la variable qui permet de séparer les différents strings qui la compose. | ||
+ | |||
+ | Avec **%** on part de la fin, avec **#** on part du début. | ||
+ | |||
+ | * correspond à un string, c'est à dire à "tous les caractères après/ | ||
+ | |||
+ | ? correspond à un caractère | ||
< | < | ||
- | echo ${test% *} # imprime la variable | + | ${test% *} # $test sans le dernier string, séparé par un espace |
- | echo ${test%-*} # idem mais avec - comme délimiteur | + | ${test%% *} # $test sans tous les derniers strings, séparés par un espace, il ne reste que le premier |
- | echo ${test#* } # imprime la variable | + | ${test#* } # $test sans le premier string |
- | echo ${test#*-} # idem mais avec - comme délimiteur | + | ${test##* } # $test sans tous les premiers strings (séparés par un espace), il ne reste que le dernier string |
+ | </ | ||
+ | Cette méthode peut aussi être utilisée pour retirer une extension de fichier, en changeant le délimiteur " " par " | ||
+ | < | ||
+ | ${test%.*} # retire tous les caractères après le dernier délimiteur " | ||
+ | ${test%.??? | ||
</ | </ |
linux/bash.1630421062.txt.gz · Dernière modification : 2024/01/05 05:30 (modification externe)