Sul mio box Linux (Gentoo Linux 2.6.31 per essere precisi) ho notato che la variabile d'ambiente HOSTNAME è disponibile nella mia shell, ma non negli script. Per esempio,
$ echo $HOSTNAME
ritorna
xxxxxxxx.com,
ma
$ ruby -e 'puts ENV["HOSTNAME"]'
ritorna
nil
D'altra parte, la variabile d'ambiente USER, ad esempio, è disponibile sia nella shell che negli script.
Ho notato che USER appare nell'elenco delle variabili di ambiente che appare quando digito
export
vale a dire,
declare -x USER="infogrind"
ma HOSTNAME no. Sospetto che il problema abbia qualcosa a che fare con questo.
Le mie domande: 1) come posso rendere HOSTNAME disponibile negli script e 2) per una migliore comprensione, dove viene inizialmente impostata questa variabile e perché non viene "esportata"?
gethostname()
per questo.