Come si creano entrambe le variabili local
e declare -r
(di sola lettura) in bash?Come creare una variabile di sola lettura locale in bash?
Se lo faccio:
function x {
declare -r var=val
}
Poi ho semplicemente ottenere un globale var
che è di sola lettura
Se lo faccio:
function x {
local var=val
}
Se lo faccio:
function x {
local var=val
declare -r var
}
Poi ho un di nuovo globale (posso accedere a var
da altre funzioni).
Come combinare sia locale che di sola lettura in bash?
'declare' è documentato come dichiarazione di una variabile locale, a meno che non si richieda esplicitamente uno globale impostando il flag' -g'. Ho appena testato sul mio sistema e si comporta come documentato. Puoi chiarire perché ritieni che non sia così? – ruakh