info:bash:variables_chaine_de_caracteres

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
info:bash:variables_chaine_de_caracteres [2022/12/17 14:45] – [Renvoyer une chaîne lorsque la variable est non définie] franckinfo:bash:variables_chaine_de_caracteres [2023/04/04 19:34] (Version actuelle) franck
Ligne 1: Ligne 1:
 ======Variables chaîne de caractères====== ======Variables chaîne de caractères======
 +
 +======Retour a la ligne dans une variable======
 +[[https://www.gnu.org/software/bash/manual/html_node/ANSI_002dC-Quoting.html]] \\
 +l'expression **$'** devant une chaîne permet d'y insérer des caractères d'échappements en les précédents de **\**.
 +\\
 +[[https://www.gnu.org/software/bash/manual/html_node/Locale-Translation.html]] \\
 +l'expression **$"** devant une chaîne convertira les caractères dans leurs forme locale.
 +<code bash>
 +TOTO=$"ligne1\nligne2\nligne3\n"
 +echo -e $TOTO
 +</code>
 +<code bash>
 +ligne1
 +ligne2
 +ligne3
 +</code>
 +
 +<code bash>
 +TOTO='ligne1
 +ligne2
 +ligne3'
 +echo ${TOTO%%$'\n'*} 
 +</code>
 +<code bash>ligne1</code>
 +<code bash>
 +TOTO=$"ligne1\nligne2\nligne3\n"
 +</code>
 +<code bash>
 +echo ${TOTO%%$"\n"*} 
 +</code>
 +<code bash>ligne1</code>
  
 =====Récupérer uniquement le nom du répertoire courant sans le chemin absolu===== =====Récupérer uniquement le nom du répertoire courant sans le chemin absolu=====
Ligne 234: Ligne 265:
 <code bash> <code bash>
 valeur_par_defaut valeur_par_defaut
-</code> 
-=====Retourner une valeur si la variable est non définie===== 
-Cette syntaxe ne défini pas ou ne modifie pas la valeur de VAR.\\ 
-Pour substituer une valeur (ici une chaîne: défaut) a une variable indéfinie uniquement. Il n'y a pas de substitution si la chaîne est vide.\\ 
-<code bash> 
-unset VAR 
-echo ${VAR-defaut} 
-</code> 
-<code bash> 
-defaut 
-</code> 
-<code bash> 
-declare VAR 
-echo ${VAR-defaut} 
-</code> 
-<code bash> 
-   # vide 
 </code> </code>
- 
- 
- 
-<code bash> 
-${VAR:-defaut} 
-</code> 
-\\ 
  
 =====Définir une variable uniquement si elle est indéfinie===== =====Définir une variable uniquement si elle est indéfinie=====
Ligne 284: Ligne 291:
 \\ \\
  
-=====retourner une chaîne si une variable est non nulle=====+=====retourner une chaîne si une variable est définie===== 
 +<code bash> 
 +unset VAR 
 +echo echo ${VAR+autre_valeur} 
 +</code> 
 +résultat: 
 +<code bash> 
 +# vide 
 +</code>
 <code bash> <code bash>
 VAR=valeur_1 VAR=valeur_1
 echo ${VAR+autre_valeur} echo ${VAR+autre_valeur}
 +</code>
 +résultat:
 +<code bash>
 autre_valeur autre_valeur
-VAR= # nulle+</code> 
 +<code bash> 
 +VAR= # vide
 echo ${VAR+autre_valeur}  echo ${VAR+autre_valeur}
 +</code>
 +resultat:
 +<code bash>
 autre_valeur autre_valeur
 +</code>
 +=====retourner une chaîne si une variable est non vide=====
 +<code bash>
 +VAR=
 echo ${VAR:+autre_valeur}  echo ${VAR:+autre_valeur}
 +</code>
 +resultat:
 +<code bash>
    # vide    # vide
 +</code>
 +<code bash>
 +VAR=TOTO
 +echo ${VAR:+autre_valeur}
 +</code>
 +resultat:
 +<code bash>
 +TOTO
 </code> </code>
 =====message d'erreur si une variable est indéfini===== =====message d'erreur si une variable est indéfini=====
  • /home/franck/dokuwiki/doc/data/attic/info/bash/variables_chaine_de_caracteres.1671284737.txt.gz
  • Dernière modification : 2022/12/17 14:45
  • de franck