Bash changer la valeur d'une variable
Résolu
mype
Messages postés
2459
Date d'inscription
Statut
Membre
Dernière intervention
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
Bonjour,
en faite j'ai declaré une variable en lecture seule et la je voudrais changer la valeur de cette variable mais j'arrive pas a enlever le mode de lecture
quelqu'un pourrait me dire comment on fais svp?
en faite j'ai declaré une variable en lecture seule et la je voudrais changer la valeur de cette variable mais j'arrive pas a enlever le mode de lecture
quelqu'un pourrait me dire comment on fais svp?
A voir également:
- Bash changer la valeur d'une variable
- Changer dns - Guide
- Changer la police sur facebook - Guide
- Changer carte graphique - Guide
- Bingo bash free - Télécharger - Divers Jeux
- Changer wifi chromecast - Guide
12 réponses
Salut,
Extrait du man bash :
Extrait du man bash :
readonly [-afp] [nom ...]
Les noms indiqués reçoivent un attribut lecture-seule. Les
valeurs affectées à ces noms ne pourront plus être modifiées.;-((
Salut,
à savoir que la variable ne peux pas être modifier dans le processus en cours.
en revanche si la variable est exporté dans un shell fils elle pourra être modifiée
à savoir que la variable ne peux pas être modifier dans le processus en cours.
en revanche si la variable est exporté dans un shell fils elle pourra être modifiée
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
lami20j@debian:~/trash$ cat ccm.sh #!/bin/bash if [ "$PROC_PID" != "$PPID" ]; then export PROC_PID=$$ var="mype" echo "initial $var" declare -r var export var $0 & # processus fils else echo "avant $var" var="lami20j" echo "après $var" fi lami20j@debian:~/trash$ ./ccm.sh initial mype avant mype après lami20j
En moins joli que la solution à "lami20j", mais tout aussi efficace :
[tmpfs]$ readonly Z="Y"
[tmpfs]$ echo $Z
Y
[tmpfs]$ unset Z
-l: unset: Z: cannot unset: readonly variable
[tmpfs]$ Z=W
-l: Z: readonly variable
[tmpfs]$ Y=W
[tmpfs]$ echo "$Y"
W
[tmpfs]$ echo "${!Z}"
W
[tmpfs]$;-))
Je viens de l'écrire, je vois que dans BASH il y a 12 astuces mais celle que je viens d'écrire n'apparaît pas :-((
Bon je vois qu'il y a 13 astuces de déclarer mais toujours pas de traces de ton intervention ;-((
Heureusement qu'elle ne faisait pas 10 pages ;-DD
Y'a quelques problèmes actuellement à ce que j'ai vu... faut attendre que ça se tasse ;-)
Heureusement qu'elle ne faisait pas 10 pages ;-DD
Y'a quelques problèmes actuellement à ce que j'ai vu... faut attendre que ça se tasse ;-)